iBase4J是Java的分散式系統架構 使用Springboot整合開源框架
阿新 • • 發佈:2018-11-05
iBase4J專案簡介
- iBase4J是Java語言的分散式系統架構。 使用Spring整合開源框架。
- 使用Maven對專案進行模組化管理,提高專案的易開發性、擴充套件性。
- 系統包括4個子系統:系統管理Service、系統管理Web、業務Service、業務Web。
- 系統管理:包括使用者管理、許可權管理、資料字典、系統引數管理等等。
- 業務相關:您的業務開發。
- 可以無限的擴充套件子系統,子系統之間使用Dubbo或MQ進行通訊。
主要功能
- 資料庫:Druid資料庫連線池,監控資料庫訪問效能,統計SQL的執行效能。 資料庫密碼加密,加密方式請檢視PropertiesUtil,decryptProperties屬性配置需要解密的key。
- 持久層:mybatis持久化,使用MyBatis-Plus優化,減少sql開發量;aop切換資料庫實現讀寫分離。Transtraction註解事務。
- MVC: 基於spring mvc註解,Rest風格Controller。Exception統一管理。
- 排程:Spring+quartz, 可以查詢、修改週期、暫停、刪除、新增、立即執行,查詢執行記錄等。
- 基於session的國際化提示資訊,職責鏈模式的本地語言攔截器,Shiro登入、URL許可權管理。會話管理,強制結束會話。
- 快取和Session:註解redis快取資料;shiro實現redis分散式session同步,重啟服務會話不丟失。
- 多系統互動:Dubbo,ActiveMQ多系統互動,ftp/sftp/fastdafs傳送檔案到獨立伺服器,使檔案服務分離。
- 前後端分離:沒有許可權的檔案只用nginx代理即可。
- 日誌:log4j2列印日誌,業務日誌和除錯日誌分開列印。同時基於時間和檔案大小分割日誌檔案。
- QQ、微信、新浪微博第三方登入。
- 工具類:excel匯入匯出,漢字轉拼音,身份證號碼驗證,數字轉大寫人民幣,FTP/SFTP/fastDFS上傳下載,傳送郵件,redis快取,加密等等。
技術選型
● 核心框架:Sring boot + Spring Framework + Dubbo + ibase4j-common ● 安全框架:Apache Shiro ● 任務排程:Spring + Quartz ● 持久層框架:MyBatis + MyBatis-Plus ● 資料庫連線池:Alibaba Druid ● 快取框架:Redis ● 會話管理:Spring-Session ● 日誌管理:SLF4J、Log4j2 ● 前端框架:Angular JS + Bootstrap + Jquery
啟動說明 nainaitea.com
* 專案依賴activemq、Redis和ZooKeeper服務。 * 使用nginx代理UI:修改配置裡的UI目錄後重啟nginx。 * 啟動方法: SysServiceApplication.java SysWebApplication.java * 測試環境打包命令: clean package -P test -f pom-sys-service-server.xml clean package -P test -f pom-sys-web-server.xml * 生產環境打包命令: clean package -P product -f pom-sys-service-server.xml clean package -P product -f pom-sys-web-server.xml