項目簡介:
eladmin基於 Spring Boot 2.1.0 、 Jpa、 Spring Security、redis、Vue的前后端分離的后台管理系統,項目采用分模塊開發方式, 權限控制采用 RBAC,支持數據字典與數據權限管理,支持一鍵生成前后端代碼,支持前端菜單動態路由。
在 github 和 gitee 上看了很多熱門的項目,發現大多數都是基於mybatis的(可能是國內業務太復雜的緣故吧),但是這個項目是基於JPA的。
項目地址: https://github.com/elunez/eladmin
開發文檔: https://docs.auauz.net/
體驗地址: https://auauz.net/
系統功能
- 用戶管理:提供用戶的相關配置,新增用戶后,默認密碼為123456
- 角色管理:對權限與菜單進行分配,可根據部門設置角色的數據權限
- 權限管理:權限細化到接口,可以理解成按鈕權限
- 菜單管理:已實現菜單動態路由,后端可配置化,支持多級菜單
- 部門管理:可配置系統組織架構,樹形表格展示
- 崗位管理:配置各個部門的職位
- 字典管理:應廣大碼友的要求加入字典管理,可維護常用一些固定的數據,如:狀態,性別等
- 操作日志:記錄用戶操作的日志
- 異常日志:記錄異常日志,方便開發人員定位錯誤
- 系統緩存:使用jedis將緩存操作可視化,並提供對redis的基本操作,可根據需求自行擴展
- SQL監控:采用druid 監控數據庫訪問性能,默認用戶名admin,密碼123456
- 定時任務:整合Quartz做定時任務,加入任務日志,任務運行情況一目了然
- 代碼生成:高靈活度一鍵生成前后端代碼,減少百分之80左右的工作任務
- 郵件工具:配合富文本,發送html格式的郵件
- 免費圖床:使用sm.ms圖床,用作公共圖片上傳使用
- 七牛雲存儲:可同步七牛雲存儲的數據到系統,無需登錄七牛雲直接操作雲數據
- 支付寶支付:整合了支付寶支付並且提供了測試賬號,可自行測試
項目結構
項目采用分模塊開發方式,將通用的配置放在公共模塊,system模塊為系統核心模塊也是項目入口模塊,logging 模塊為系統的日志模塊,tools 為第三方工具模塊,包含了圖床、郵件、七牛雲、支付寶,generator 為系統的代碼生成模塊
eladmin-common 公共模塊
- exception 項目統一異常的處理
- mapper mapstruct的通用mapper
- redis redis緩存相關配置
- swagger2 接口文檔配置
- utils 系統通用工具類
eladmin-system 系統核心模塊(系統啟動入口)
- config 配置跨域與靜態資源,與數據權限
- modules 系統相關模塊(登錄授權、定時任務等)
eladmin-logging 系統日志模塊
eladmin-tools 系統第三方工具模塊
eladmin-generator 系統代碼生成模塊
開發要求
- JDK:8+
- Redis 3.0+
- Maven 3.0+
- MYSQL 5.5.0+
- Node v10+
鵬哥推薦的項目都有一個特點,那就是文檔特別全,任何沒有文檔的項目都是耍流浪。

版權說明:

項目運行效果
首頁依然是經典的Dashboard設計。

用戶管理基於部門,作者對經典的權限結構還是很了解的。

系統提供了非常強的Audit 記錄
可以方便的查看當前系統中的緩存信息
SQL監控

API文檔

豐富的圖標庫

很驚喜,集成了Markdown 組件

整體來說這個項目還是一個非常不多的開源項目,對於一個初創公司或者小公司來說,做一個后台還是可以的。沒必要跟風一定要微服務,以鵬哥經驗,小公司上微服務簡直是自掘墳墓,運維成本會指數級上升。
