日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iBase4j项目搭建

發布時間:2023/12/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iBase4j项目搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

iBase4j是一個Java分布式開發平臺,整合了目前Java開發常用的開發框架,官網上介紹如下:

  • iBase4J是Java語言的分布式系統架構。 使用Spring整合開源框架。
  • 使用Maven對項目進行模塊化管理,提高項目的易開發性、擴展性。
  • 系統包括5個子系統:公共功能、系統管理Service、系統管理Web、業務Service、業務Web。
  • 公共功能:公共功能(AOP、緩存、基類、調度等等)、公共配置、工具類。
  • 系統管理:包括用戶管理、權限管理、數據字典、系統參數管理等等。
  • 業務相關:您的業務開發。
  • 可以無限的擴展子系統,子系統之間使用Dubbo或MQ進行通信。

項目地址:?https://github.com/iBase4J/iBase4J

碼云地址:?https://gitee.com/iBase4J/iBase4J

參考資料:?http://blog.csdn.net/u012225679/article/details/73849357

搭建iBase4j項目需要用到的工具如下:

  • Intellij IDEA 2017.3
  • nginx 1.13.9
  • mysql 5.7.21
  • zooKeeper 3.4.10
  • redis 3.2.1
  • activemq 5.15.3
  • maven 3.3.3


1.項目結構

首先下載iBase4j項目,解壓后的文件結構如下


iBase4J是一個分布式系統架構,每個模塊都是一個單獨的系統,每個系統可以發布多個service,不同的web間使用相同的redis緩存保證session相同,目前項目下有8個子項目:iBase4J-Common、iBase4J-SYS-Facade、iBase4J-SYS-Service、iBase4J-SYS-Web、iBase4J-Biz-Facade、iBase4J-Biz-Service、iBase4J-Biz-Web、iBase4J-UI。

  • iBase4J-Common是通用配置和工具類,已打成jar包;
  • iBase4J-SYS-Facade是iBase4J-SYS-Service和iBase4J-SYS-Web交互需要的fa?ade和model;iBase4J-SYS-Service是系統管理相關的數據庫操作服務;
  • iBase4J-SYS-Web是連接UI和iBase4J-SYS-Service的橋梁。
  • iBase4J-SYS-Web和iBase4J-SYS-Service之間通過dubbo或MQ交互。Web和Service可以創建多個,Web使用相同的spring-session命名空間并注冊到相同的redis服務實現session共享,Web通過使用不同的參數調用統一的provider.excute方法實現調用不同的service方法。
  • UI是前后端分離的,需要使用nginx反向代理。通過ajax異步請求獲取數據;多系統 通過不同前綴 分發到不同web;
  • iBase4J-SYS-Service使用Druid連接數據庫,可以監控sql執行情況,訪問地址:service地址:service端口/druid;
    • 使用AOP實現讀寫數據庫切換,使用Mybatis持久化框架,使用PageHelper輔助分頁,使用spring注解把數據緩存到redis;iBase4J-SYS-Web使用Spring MVC框架管理控制器;使用Shiro輔助管理權限,權限嚴格控制到給個URL請求。
    • 調度管理,在這里只有調度的聲明,可以刪除、修改、暫停、啟動、執行。調度的實現可以在別的任意模塊,只需用dubbo暴露服務即可。調度支持集群模式。
  • UI目前計劃有3個版本,已開發的只有angularJS版不同UI的菜單不同,所以請根據需要執行對應的SQL菜單;
  • iBase4J-Biz-Facade、iBase4J-Biz-Service、iBase4J-Biz-Web為擴展業務功能項目。
  • SQL文件見項目中sqls目錄;
  • 權限控制:
    • 菜單權限:可以直接配置用戶菜單,也可以通過配置角色配用戶菜單;sys_user_role配置用戶角色,sys_role_menu配置角色菜單/權限;操作類權限(增刪改等)配置為不顯示的菜單;
    • 代碼中權限的控制,如圖
  • 2.環境搭建

    首先需要初始化數據庫,新建一個ibase4j數據庫,將項目文件夾sqls下面的三個sql腳本分別導入數據庫中,導入成功之后數據庫將有如下一下數據表

    修改service層項目下的resource/config/jdbc.properties數據庫配置文件:

    數據庫密碼使用DES加密方法加密,SecurityUtil.encryptDes(“密碼”, ${db.key}.getBytes());??

    可以使用SecurityUtil.encryptDes方法加密密碼,db.key 或 druid.key在jdbc.properties中配置

    3.運行后端項目

    1) 分別啟動 zooKeeper, redis, activemq后臺服務

    2) 在IDEA中添加如下兩個maven任務,分別用來啟動 sys-service, sys-web項目

    clean package -P build tomcat7:run-war -f pom-sys-service-server.xml?clean package -P build tomcat7:run-war -f pom-sys-web-server.xml

    3) 然后先啟動 sys-service項目,完成后啟動sys-web項目,啟動成功之后訪問http://localhost:8088/swagger-ui.html可以看到如下swagger-ui.html的restful接口

    4) 訪問durid??http://localhost:8085/druid? 查看SQL執行情況(用戶密碼:druid/druid):

    4.運行前端項目

    目前iBase4j的前端項目是使用AngularJS v1.5.6開發的,并且使用nginx方向代理靜態頁面的形式運行,為了啟動iBase4j的前端項目需要配置nginx,

    在nginx的安裝目錄下找到conf文件夾下的nginx.conf文件,按照如下所示配置代理的靜態頁面的地址

    具體內容如下:

    server {????listen?????? 8002;????server_name? localhost;????location / {????????root?? D:\IdeaProjects\iBase4J\iBase4J-UI\iBase4J-UI-AngularJS;????????index? index.html index.htm;?????????????????# 用戶瀏覽器端的緩存設置?????????location ~* \.(css|js|jpg|jpeg|gif|png|swf|htm|html|json|xml|svg|woff|ttf|eot|map|ico)$ {?????????????expires 1h;?????????????if?(-f $request_filename) {?????????????????break;?????????????}?????????}?????????????????# 動態頁面,交給tomcat處理?????????if?( !-e $request_filename) {?????????????proxy_pass? http://127.0.0.1:8088;?????????}????}?}

    啟動nginx服務器,?nginx.exe -c .\conf\nginx.conf??然后訪問?http://localhost:8002?地址就可以看到iBase4j的前端頁面了,用戶名密碼:admin/111111


    總結

    以上是生活随笔為你收集整理的iBase4j项目搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。