一城舞、前言
Diboot 2.0.5版本已于近日發(fā)布家夺,在此次發(fā)布中,我們新增了file-starter組件榨为,完善了iam-starter組件随闺,對core核心進行了相關(guān)優(yōu)化板壮,讓devtools也支持對IAM與File組件相關(guān)代碼進行自動化處理绰精。
除此之外笨使,我們還為您準備了兩套前端基礎(chǔ)項目硫椰,分別是基于 Antd Pro Vue 和 基于 Vue Element Admin 的項目靶草,有助于更加快捷地開始您的項目奕翔。
對于以上的版本簡述派继,您可以查看我們以下的版本特性列表以及我們的官方文檔來詳細了解驾窟。也歡迎您加入我們的QQ群(731690096)與開發(fā)團隊成員深入交流认轨。
二、Diboot整體架構(gòu)圖
三、后端核心特性
diboot-core與diboot-core-spring-boot-starter
n-n關(guān)聯(lián)的中間表查詢中支持動態(tài)按需添加中間表的
is_deleted=0
邏輯刪除條件BaseService
增加用于批量增刪改1對多關(guān)聯(lián)數(shù)據(jù)的系列接口:create/update/deleteEntityAndRelatedEntities
BaseService
增加檢測唯一性的接口:exists(IGetter<T> getterFn, Object value)
BindAnnotationGroupCache
更名為ParserCache
寻行,并增加其他解析過程中的緩存BusinessException
增加單String參數(shù)拌蜘,指定錯誤信息V
增加validateBean
方法简卧,用于手動校驗基于validator注解的bean校驗JsonResult
增加Status
狀態(tài)碼對應的靜態(tài)初始化方法举娩,更便于書寫铜涉,如:JsonResult.OK(data)
jdbc url參數(shù)支持從多數(shù)據(jù)源配置中的主數(shù)據(jù)源參數(shù)中讀取
RelationsBinder
增加單個entity/vo參數(shù)的綁定接口SqlExecutor
中增加validateQuery
方法芙代,用于starter執(zhí)行驗證性SQLBaseCrudController
中增加afterDeleted()
方法纹烹,用于刪除后的擴展處理
diboot-iam-base-spring-boot-starter
在菜單按鈕權(quán)限這塊铺呵,我們不走尋常路片挂。你會發(fā)現(xiàn)我們的IAM與前端項目在菜單按鈕權(quán)限配置這塊宴卖,與其他所有系統(tǒng)都不同,卻比其他所有系統(tǒng)更加靈活父丰,更加方便與智能蛾扇。無論是前端開發(fā)镀首,還是后端開發(fā)更哄,以及權(quán)限配置成翩,還是前后端在權(quán)限的溝通上麻敌,都將省事很多。
注意:
IAM組件請使用我們的2.0.5.1
版本寞焙,如下:
<dependency>
<groupId>com.diboot</groupId>
<artifactId>diboot-iam-base-spring-boot-starter</artifactId>
<version>2.0.5.1</version>
</dependency>
<dependency>
<groupId>com.github.whvcse</groupId>
<artifactId>easy-captcha</artifactId>
<version>1.6.2</version>
</dependency>
RBAC角色權(quán)限模型 + JWT的認證授權(quán) 實現(xiàn)扛禽,支持刷新token
簡化的BindPermission注解编曼,支持兼容shiro的簡化權(quán)限綁定與自動鑒權(quán)
自動提取需要鑒權(quán)的后端接口, 借助前端系統(tǒng)權(quán)限設(shè)置頁面掐场,智能熊户、快速地配置前后端菜單嚷堡、按鈕與權(quán)限關(guān)聯(lián)。
支持靈活的擴展能力(擴展多種登錄方式沼琉、靈活替換用戶實體類打瘪、自定義緩存等)
Starter啟動自動安裝依賴的數(shù)據(jù)表
加密方式更改為MD5+鹽
登錄頁增加驗證碼支持
權(quán)限支持修改后立即生效
diboot-file-spring-boot-starter
基于EasyExcel輕量封裝
封裝常用的文件本地存儲瑟慈、上傳下載葛碧、圖片壓縮水印等常用處理
Starter啟動自動安裝依賴的數(shù)據(jù)表
支持Java標準注解的校驗
支持@BindDict注解實現(xiàn)字典name-value轉(zhuǎn)換
提供完善的校驗錯誤提示
啟用devtools,自動生成初始樣例controller代碼到本地
diboot-devtools-spring-boot-starter
生成本地Controller的Base類改為默認BaseCustomCrudController,不再繼承父類url mapping洋措,支持通過配置啟用父類url繼承
生成
entity
的字段時自動檢測父類BaseCustomEntity
的屬性菠发,父類中存在的滓鸠,不再重復生成定義Date
日期類型糜俗,字段加上注解@JSONField(format = "")
悠抹,以兼容fastjson全局配置覆蓋format的問題)字段定義數(shù)據(jù)類型增加
BigDecimal
類型非空字段的樣例數(shù)據(jù)不再強制填寫楔敌,未填寫時可直接提交梁丘,由devtools自動生成
BaseExtCustomEntity
被刪除后不再重新生成氛谜,以支持不需要extdata
的場景關(guān)聯(lián)字段的可選字段限定與當前column同類型字段(默認選中id/uuid),as字段顯示String類型字段区端,使選擇更方便
基于diboot-iam組件值漫,初始生成iam相關(guān)可自定義的代碼至本地
基于diboot-file組件,初始生成UploadFileController至本地
四织盼、前端核心特性
diboot-antd-admin前端項目
基于開源項目ant-design-pro-vue
在ant-design-pro-vue項目基礎(chǔ)上杨何,進行精簡
登錄、權(quán)限沥邻、接口對接上,與diboot-v2相關(guān)組件構(gòu)建的后端應用無縫集成且開箱可用
提取CRUD頁面相關(guān)通用屬性與方法到mixins文件中唐全,少寫代碼埃跷,多做事情
到按鈕級別的細粒度權(quán)限控制
智能化的權(quán)限配置方案(點點點即可完成)
自動完成即將過期的授權(quán)token交換
預置多種常用請求方式,輕松完成異步文件下載等
數(shù)據(jù)字典管理功能
系統(tǒng)用戶管理界面
角色與權(quán)限管理功能
權(quán)限管理功能
登錄日志管理功能
diboot-element-admin前端項目
基于開源項目vue-element-admin的基礎(chǔ)模板vue-admin-template邮利,在此基礎(chǔ)上進行相關(guān)功能集成
在vue-admin-template項目基礎(chǔ)上弥雹,增加了vue-element-admin具有的多頁簽、菜單搜索延届、全屏顯示剪勿、調(diào)整布局大小等功能
登錄、權(quán)限方庭、接口對接上厕吉,與diboot-v2相關(guān)組件構(gòu)建的后端應用無縫集成且開箱可用
提取CRUD頁面相關(guān)通用屬性與方法到mixins文件中,少寫代碼械念,多做事情
到按鈕級別的細粒度權(quán)限控制
智能化的權(quán)限配置方案(點點點即可完成)
自動完成即將過期的授權(quán)token交換
預置多種常用請求方式赴涵,輕松完成異步文件下載等
數(shù)據(jù)字典管理功能
系統(tǒng)用戶管理功能
角色與權(quán)限管理功能
權(quán)限管理功能
登錄日志管理功能