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緩存,加密等等。
Spring,SpringBoot,SpringMVC,Mybatis,mybatis-plus,motan/dubbo分佈式,Redis緩存,Shiro權限管理,Spring-Session單點登錄,Quartz分佈式集羣調度,Restful服務,QQ/微信登錄,App token登錄,微信/支付寶支付;日期轉換、數據類型轉換、序列化、漢字轉拼音、身份證號碼驗證、數字轉人民幣、發送短信、發送郵件、加密解密、圖片處理、excel導入導出、FTP/SFTP/fastDFS上傳下載、二維碼、XML讀寫、高精度計算、系統配置工具類等等。
搭建
GitHub地址:https://github.com/iBase4J/iBase4J-SpringBoot
項目依賴:redis,zookeeper,actionmq
redis安裝:https://blog.csdn.net/m0_37603385/article/details/97276263
zookeeper 安裝:https://blog.csdn.net/sinat_39179993/article/details/90969342
activeMq 安裝 :https://blog.csdn.net/mr_haixin/article/details/80418204
1.git clone 項目
git clone https://github.com/iBase4J/iBase4J-SpringBoot.git
2.導入 ide
這是使用的是idea ,jdk版本1.8,mysql版本5.6
3.導入sql文件
依次將下面文件導入數據庫
4.修改配置文件
數據庫連接
默認加密密碼buzhidao =,=
生成加密密碼
5.啓動:
SysServiceApplication.java
SysWebApplication.java
Api地址訪問:http://localhost:8088/swagger-ui.html#/
6.訪問項目需要配置nginx:
配置文件
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
# 靜態頁面目錄
root D:\workspace\iBase4J\iBase4J-UI\iBase4J-UI-AngularJS;
# 默認首頁
index index.html;
location = / {
index login.html index.html index.htm;
}
# 用戶瀏覽器端的緩存設置
location ~* \.(css|js|jpg|jpeg|gif|png|swf|htm|html|json|xml|svg|woff|ttf|eot|map|ico|woff2|apk)$ {
proxy_cache_valid 200 304 4h;
expires 4h;
}
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
location /app/ {
# 動態頁面,交給tomcat處理
proxy_pass http://127.0.0.1:8090;
}
location / {
# 動態頁面,交給tomcat處理
proxy_pass http://127.0.0.1:8088;
}
}
訪問地址: http://localhost/ admin/111111