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。
- 使用AOP實現讀寫數據庫切換,使用Mybatis持久化框架,使用PageHelper輔助分頁,使用spring注解把數據緩存到redis;iBase4J-SYS-Web使用Spring MVC框架管理控制器;使用Shiro輔助管理權限,權限嚴格控制到給個URL請求。
- 調度管理,在這里只有調度的聲明,可以刪除、修改、暫停、啟動、執行。調度的實現可以在別的任意模塊,只需用dubbo暴露服務即可。調度支持集群模式。
- 菜單權限:可以直接配置用戶菜單,也可以通過配置角色配用戶菜單;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项目搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ubuntu系统安装
- 下一篇: [Robot Framework] 怎么