分享的項目從安裝部署到代碼具體功能都有很詳細都說明
eladmin 是一款基於 Spring Boot 2.1.0 、 Jpa、 Spring Security、redis、Vue 的前后端分離的后台管理系統,項目采用分模塊開發方式, 權限控制采用 RBAC,支持數據字典與數據權限管理,支持一鍵生成前后端代碼,支持動態路由。這個開源項目基本穩定,並且后續作者還會繼續優化。完全開源!這個真的要為原作者點個贊,如果大家覺得這個項目有用的話,建議可以稍微捐贈一下原作者支持一下。后端整理代碼質量、表設計等各個方面來說都是很不錯的。前后端分離,前端使用的是國內常用的 vue 框架,也比較容易上手。
系統功能
用戶管理:提供用戶的相關配置,新增用戶后,默認密碼為123456
角色管理:對權限與菜單進行分配,可根據部門設置角色的數據權限
菜單管理:已實現菜單動態路由,后端可配置化,支持多級菜單
部門管理:可配置系統組織架構,樹形表格展示
崗位管理:配置各個部門的職位
字典管理:可維護常用一些固定的數據,如:狀態,性別等
系統日志:記錄用戶操作日志與異常日志,方便開發人員定位拍錯
SQL監控:采用druid 監控數據庫訪問性能,默認用戶名admin,密碼123456
定時任務:整合Quartz做定時任務,加入任務日志,任務運行情況一目了然
代碼生成:高靈活度生成前后端代碼,減少大量重復的工作任務
郵件工具:配合富文本,發送html格式的郵件
七牛雲存儲:可同步七牛雲存儲的數據到系統,無需登錄七牛雲直接操作雲數據
支付寶支付:整合了支付寶支付並且提供了測試賬號,可自行測試
服務監控:監控服務器的負載情況
運維管理:一鍵部署你的應用
項目結構
項目采用按功能分模塊的開發方式,結構如下
eladmin-common
為系統的公共模塊,各種工具類,公共配置存在該模塊
eladmin-system
為系統核心模塊也是項目入口模塊,也是最終需要打包部署的模塊
eladmin-logging
為系統的日志模塊,其他模塊如果需要記錄日志需要引入該模塊
eladmin-tools
為第三方工具模塊,包含:圖床、郵件、雲存儲、本地存儲、支付寶
eladmin-generator
為系統的代碼生成模塊,代碼生成的模板在 system 模塊中
詳細結構
- eladmin-common 公共模塊
- annotation 為系統自定義注解
- aspect 自定義注解的切面
- base 提供了Entity、DTO基類和mapstruct的通用mapper
- config 自定義權限實現、redis配置、swagger配置、Rsa配置等
- exception 項目統一異常的處理
- utils 系統通用工具類
- eladmin-system 系統核心模塊(系統啟動入口)
- config 配置跨域與靜態資源,與數據權限
- thread 線程池相關
- modules 系統相關模塊(登錄授權、系統監控、定時任務、運維管理等)
- eladmin-logging 系統日志模塊
- eladmin-tools 系統第三方工具模塊
- eladmin-generator 系統代碼生成模塊
系統的亮點
-
統一異常處理設計
-
注解權限的設計
-
接口級別的限流設計
-
比較完善的工具,如支付寶,郵件,定時任務,各種監控的實現
-
緩存redis