一個前後端分離的Java快速開發平臺,基於SpringBoot2.1.2、Mybatis-Plus3.1.0、Activiti6、RabbitMQ、提供ELK日誌分析解決方案。

Fork me on Gitee

一個前後端分離的Java快速開發平臺,基於SpringBoot2.X、Mybatis-Plus3.X、Activiti6。支持 Oracle、MySQL、DB2、Postgre、MariaDB、H2、HSQL、SQLite、SQLServer2005、SQLServer 等多種數據庫。

技術交流羣

- 66502035(已滿)
- 870579539
- 151602347

項目說明

優勢

  • 嚴格遵循阿里編碼規約開發,便於閱讀及二次開發
  • 支持 MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer2005、SQLServer 等多種數據庫
  • 實現前後端分離,通過token進行數據交互,前端再也不用關注後端技術
  • 靈活的權限控制,可控制到頁面和按鈕,滿足絕大部分的權限需求
  • 可在線生成vue、controller、entity、xml、dao、service、vue、sql代碼,增刪改查代碼一鍵生成,減少80%以上的開發任務
  • 引入quartz定時任務,可動態完成任務的添加、修改、刪除、暫停、恢復及日誌查看等功能
  • 引入API模板,根據token作爲登錄令牌,極大的方便了APP接口開發
  • 引入Hibernate Validator校驗框架,輕鬆實現後端校驗
  • 引入雲存儲服務,已支持:七牛雲、阿里雲、騰訊雲、本地存儲
  • 自定義實現swagger文檔支持,方便編寫API接口文檔
  • 使用Mybatis攔截器實現數據權限,對代碼侵入小

技術選型:

- Spring Boot 2.1.0.RELEASE
- Apache Shiro 1.4.0
- Spring MVC 5.1.2
- MyBatis 3.5.0、MyBatis-Plus 3.1.0
- Quartz 2.3.0
- Druid 1.1.10
- lombok 1.18.4
- swagger 2.9.2
- jwt 0.9.1
- easypoi 4.0.0

項目結構

platform-plus
├─sql  項目SQL語句
│
├─common 公共模塊
│  ├─annotation 自定義註解
│  ├─aspect 系統日誌、redis存儲
│  ├─exception 異常處理
│  ├─interceptor 日誌攔截器
│  ├─session 分佈式session管理
│  ├─utils 工具類
│  ├─validator 後臺校驗
│  └─xss XSS過濾
│ 
├─config 配置信息
│ 
├─datascope 數據權限攔截器
│ 
├─datasources 多數據源
│ 
├─modules 功能模塊
│  ├─app API接口模塊(APP調用)
│  ├─gen 代碼生成模塊
│  ├─job 定時任務模塊
│  ├─oss 文件服務模塊
│  ├─swaggerbootstrapui 自定義swagger文檔模塊
│  └─sys 權限模塊
│ 
├─PlatformPlusApplication 項目啓動類
│  
├──resources 
│  ├─gen 代碼生成工具
│  ├─mapper SQL對應的XML文件
│  └─static 自定義swagger文檔


實現功能

- 系統管理
    - 菜單管理
    - 組織機構
    - 系統參數
    - 字典管理
    - 文件上傳
    - 系統日誌
- 權限管理
    - 管理員列表
    - 角色管理
- 短信平臺
    - 短信配置
- 任務調度
    - 定時任務
- 開發工具
    - 在線用戶管理
    - 緩存信息
    - SQL監控
    - 接口文檔
    - 代碼生成器
- 郵件系統
    - 發送記錄
- ELK平臺

項目演示

  • 演示地址:http://fly2you.cn/platform-plus/#/login
  • 賬號密碼:
    • admin/admin
    • test/888888
    • test1/888888
    • test2/888888
    • test3/888888
    • test4/888888
    • test5/888888
    • test6/888888
    • test7/888888
    • test8/888888
    • test9/888888
    • test10/888888

效果圖:

  • ELK日誌分析
    https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/elk.png
  • 流程編輯
    https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/editor.png
  • 流程操作
    https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/reprocdef.png
  • 模型管理
    https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/remodel.png
  • 菜單管理 https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/platform-plus.jpg
  • 字典管理 https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/dict.png
  • 在線人數 https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/users.png
  • 緩存數據 https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/doc.png
  • 接口文檔 https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/platform-plus/doc.png

後端部署

  • 通過git下載源碼
  • 創建數據庫plaftorm-plus
  • mysql執行sql/mysql.sql文件(oracle執行sql/oracle.sql),初始化數據
  • 修改application-dev.yml,修改MySQL、Oracle驅動、賬號和密碼
  • Eclipse、IDEA運行PlatformPlusApplication.java,則可啓動項目
  • docker部署
# 在centos7 ~ 創建一個文件夾docker,裏面放置Dockerfile 和 mvn 打包的項目platform-plus.jar
# 在該docker文件下 指令:
docker build -t docker .

# 運行 Docker Image
docker run -d -p 8888:8888 docker

提交反饋

  1. 歡迎提交 issue,請寫清楚遇到問題的原因,開發環境,復顯步驟。

  2. 不接受功能請求的 issue,功能請求可能會被直接關閉。

常用API

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章