jjche-boot-企業(yè)級快速開發(fā)平臺

jjche-boot

企業(yè)級快速開發(fā)平臺,前后端分離設(shè)計,基于SpringBoot2.x、Spring Security,JWT,MyBatis-plus,Vue,在線代碼生成器一鍵生成前后端代碼,API接口快速開發(fā)利器,幫助開發(fā)者節(jié)省70%的重復(fù)工作,更專注業(yè)務(wù),節(jié)省開發(fā)成本,100%開源。

體驗地址:http://149.28.233.161

        **登錄**:賬號:demo,密碼:123456

        **應(yīng)用監(jiān)控/接口文檔**:賬號:admin,密碼:123456

技術(shù)文檔:https://miaoyinjun.gitee.io/jjche-boot-book/

項目介紹

  1. 基礎(chǔ)功能:用戶、角色、菜單、部門、崗位、數(shù)據(jù)字典、任務(wù)調(diào)度、版本

  2. 在線代碼生成器

    后端代碼:controller、service、mapper、DO、DTO、VO、類、方法注釋、字段驗證、日志、接口文檔,菜單-權(quán)限控制SQL

    前端代碼:api.js,index.vue

    手動MERGE后,不需要任何修改直接使用

  3. 操作日志:基于注解,可在方法執(zhí)行前/后記錄日志(用戶、請求參數(shù)、類型、描述、結(jié)果、耗時、瀏覽器、操作系統(tǒng)、IP來源等)

    新增場景:入?yún)瑢W(xué)生姓名:張三,日志記錄:新增的學(xué)生姓名是[張三]

    刪除場景:入?yún)⒅挥袑W(xué)生的id,可在注解中調(diào)用自定義函數(shù)查出學(xué)生姓名,日志記錄:被刪除的學(xué)生姓名是[張三]
    

    修改場景:入?yún)薷暮蟮膶W(xué)生姓名:李四,日志記錄:修改內(nèi)容:「[(姓名),舊值:'張三',新值:'李四']」

  4. 查詢過濾器:SQL自動動態(tài)拼裝,條件(等于、不等于、大于、小于、全模糊、左模糊、右模糊、區(qū)間、包含、不為空、為空、自定義SQL等)

  5. 數(shù)據(jù)權(quán)限:菜單級、按鈕級、數(shù)據(jù)行級、數(shù)據(jù)列級、列表和表單字段級

  6. 字段驗證:借助強大的注解驗證和異常捕捉實現(xiàn)(非空、數(shù)字、日期、手機號、郵件等)

  7. 文件服務(wù):集成本地存儲、七牛云,可自動擴展

  8. 數(shù)據(jù)庫:目前只在MySQL上測試,理論上兼容其它數(shù)據(jù)庫,如果需求可自行擴展

  9. 接口定義:統(tǒng)一restful風(fēng)格,完整的出入?yún)⒏袷蕉x、集成knife4j在線接口文檔,JWT token安全驗證

  10. 系統(tǒng)監(jiān)控:在線用戶、操作日志、服務(wù)器JVM監(jiān)控、SQL監(jiān)控、spring-boot-admin應(yīng)用監(jiān)控,Redis,最后一次GIT提交信息

  11. 權(quán)限控制:RBAC基于角色控制訪問

  12. 信息安全:基于注解,字段輸出自動加密,輸入自動解密,適用場景:id字段為有序自增,不想讓他人通過猜到id字段是有序

  13. 賬號/密碼策略:賬號鎖定、賬號過期、密碼過期、密碼復(fù)雜度定義

  14. 工具類:集成hutool、短信發(fā)送、郵件發(fā)送、Excel導(dǎo)出

  15. 前端crud組件,實現(xiàn)頁面的分頁查詢、新增、修改、刪除、導(dǎo)出

  16. 數(shù)據(jù)庫版本控制:Liquibase跟sql版本變化,回滾

  17. 開發(fā)規(guī)范:阿里代碼規(guī)范文檔、注釋規(guī)范

  18. 最佳實踐:提供本地開發(fā)、測試、生產(chǎn)、Docker部署文檔

技術(shù)棧

技術(shù) 名稱 說明
springBoot springBoot框架
spring Security 安全框架 權(quán)限認證
mybatis plus mybatis增強 增強對數(shù)據(jù)庫操作工具
Druid 數(shù)據(jù)庫連接池 提供監(jiān)控
knife4j swagger接口文檔增強
MapStruct Bean映射工具
jetCache 通用緩存框架
liquibase 管理數(shù)據(jù)庫變化工具 跟蹤,管理和應(yīng)用數(shù)據(jù)庫變化的數(shù)據(jù)庫重構(gòu)工具
p6spy SQL日志打印工具
spring-boot-admin 管理和監(jiān)控SpringBoot應(yīng)用程序
jasypt 配置文件加密
lombok 生成POJO的getter/setter
hutool 工具類庫
logback 日志框架
xxl-job 分布式定時框架
jgitflow-maven-plugin 簡化實現(xiàn)git flow工作流程插件
git-commit-id-plugin git commit信息收集插件 maven打jar包時帶上 git commit相關(guān)信息
maven-javadoc-plugin javadoc插件 檢查,填充部分注釋信息
screw-maven-plugin 數(shù)據(jù)庫文檔生成插件
springloaded 熱部署插件

模塊說明

jjche-boot

jjche-boot-ui -- 前端
jjche-boot --后端

jjche-boot-web-demo -- 入口
jjche-boot-parent -- 父模塊

jjche-boot-common -- 通用定義
jjche-boot-eladmin -- 基礎(chǔ)業(yè)務(wù)
jjche-boot-eladmin-generator -- 代碼生成
jjche-boot-eladmin-logging -- 日志
jjche-boot-eladmin-system -- 系統(tǒng)
jjche-boot-eladmin-tools -- 工具

jjche-boot-starters -- 組件增強

jjche-boot-cache-starter -- 緩存
jjche-boot-core-starter -- 核心
jjche-boot-filter-starter -- 安全過濾器
jjche-boot-jackson-starter -- jackson定義
jjche-boot-log-starter -- 日志
jjche-boot-mybatis-starter -- mybatis定義
jjche-boot-sba-starter -- spring-boot-admin增強
jjche-boot-security-starter -- 安全
jjche-boot-swagger-starter -- swagger增強

[圖片上傳失敗...(image-b38c79-1641540844147)]

[圖片上傳失敗...(image-9f71e2-1641540844147)]

image-20211208135706365

[圖片上傳失敗...(image-4a51ed-1641540844147)]

image-20211208135631192

[圖片上傳失敗...(image-a581c-1641540844147)]

[站外圖片上傳中...(image-443200-1641540844147)]

[圖片上傳失敗...(image-277878-1641540844147)]

[站外圖片上傳中...(image-494bfa-1641540844147)]

image-20210926170407498

[站外圖片上傳中...(image-5f2a1f-1641540844148)]

image-20210927154722486

[站外圖片上傳中...(image-85aca8-1641540844148)]

特別鳴謝

  1. 感謝eladmin 允許在基礎(chǔ)業(yè)務(wù)功能上進行擴展

eladmin作為獨立模塊引入,并作了以下擴展

  1. 后端全部重寫,原業(yè)務(wù)邏輯保留,Mybatis替換JPA
  2. 新的注釋和代碼規(guī)范
  3. 引入了新的日志模塊mzt-biz-log,并做了擴展
  4. 同時支持賬號密碼與短信登錄,可再擴展其它方式登錄
  5. 引入liquibase控制數(shù)據(jù)庫結(jié)構(gòu)變化,支持回滾
  6. 行列數(shù)據(jù)級別權(quán)限控制
  7. 增加注解,入?yún)⒔饷埽鰠⒓用?,舉例:返回id主鍵加密,保證數(shù)據(jù)安全
  8. 引入SpringBootAdmin,服務(wù)端與客戶端都為當前服務(wù),非開發(fā)模式必須登錄才能使用,可查看git最后一次的提交信息,用于驗證項目版本是否正確
  9. 引入knife4j替換原swagger,并增加了枚舉支持,可在api文檔界面下拉選擇枚舉
  10. 增加賬號過期、密碼過期、隔N天強制修改密碼等機制
  11. 支持參數(shù)驗證@RequestParam、@requestbody
  12. 增加版本控制菜單
  13. 使用vue-admin-beautiful-pro 重寫了登錄頁面
  14. 定時器增加分布式鎖,避免啟動多個服務(wù)場景任務(wù)重復(fù)執(zhí)行
  15. crud.js支持打開編輯界面時可請求獲取數(shù)據(jù)接口
  16. 其它自行體驗
  1. 感謝mouzt 提供的日志組件

TODO

  1. 首頁-監(jiān)控,pv,uv
  2. 后端返回菜單優(yōu)化
  3. 集成springCloud
  4. k8s
  5. istio

支持

如果您喜歡該項目,請給項目點亮??,讓更多的開發(fā)者看到

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容