Diboot 2.0.5版本已於近日發布,在此次發布中,我們新增了file-starter組件,完善了iam-starter組件,對core核心進行了相關優化,讓devtools也支持對IAM與File組件相關代碼進行自動化處理。
除此之外,我們還為您準備了兩套前端基礎項目,分別是基於 Antd Pro Vue 和 基於 Vue Element Admin 的項目,有助於更加快捷地開始您的項目。
對於以上的版本簡述,您可以查看我們以下的版本特性列表以及我們的官方文檔來詳細了解。
core相關文檔
n-n關聯的中間表查詢中支持動態按需添加中間表的is_deleted=0
邏輯刪除條件
BaseService
增加用於批量增刪改1對多關聯數據的系列接口:create/update/deleteEntityAndRelatedEntities
BaseService
增加檢測唯一性的接口:exists(IGetter<T> getterFn, Object value)
BindAnnotationGroupCache
更名為ParserCache
,並增加其他解析過程中的緩存
BusinessException
增加單String參數,指定錯誤信息
V
增加validateBean
方法,用於手動校驗基於validator註解的bean校驗
JsonResult
增加Status
狀態碼對應的靜態初始化方法,更便於書寫,如:JsonResult.OK(data)
jdbc url參數支持從多數據源配置中的主數據源參數中讀取
RelationsBinder
增加單個entity/vo參數的綁定接口
SqlExecutor
中增加validateQuery
方法,用於starter執行驗證性SQL
BaseCrudController
中增加afterDeleted()
方法,用於刪除後的擴展處理
在菜單按鈕權限這塊,我們不走尋常路。你會發現我們的IAM與前端項目在菜單按鈕權限配置這塊,與其他所有系統都不同,卻比其他所有系統更加靈活,更加方便與智能。無論是前端開發,還是後端開發,以及權限配置,還是前後端在權限的溝通上,都將省事很多。
注意:
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>
IAM相關文檔
RBAC角色權限模型 + JWT的認證授權 實現,支持刷新token
簡化的BindPermission註解,支持兼容shiro的簡化權限綁定與自動鑑權
自動提取需要鑑權的後端接口, 藉助前端系統權限設置頁面,智能、快速地配置前後端菜單、按鈕與權限關聯。
支持靈活的擴展能力(擴展多種登錄方式、靈活替換用戶實體類、自定義緩存等)
Starter啟動自動安裝依賴的數據表
加密方式更改為MD5+鹽
登錄頁增加驗證碼支持
權限支持修改後立即生效
File相關文檔
基於EasyExcel輕量封裝
封裝常用的文件本地存儲、上傳下載、圖片壓縮水印等常用處理
Starter啟動自動安裝依賴的數據表
支持Java標準註解的校驗
支持@BindDict註解實現字典name-value轉換
提供完善的校驗錯誤提示
啟用devtools,自動生成初始樣例controller代碼到本地
devtools相關文檔
生成本地Controller的Base類改為默認BaseCustomCrudController,不再繼承父類url mapping,支持通過配置啟用父類url繼承
生成entity
的欄位時自動檢測父類BaseCustomEntity
的屬性,父類中存在的,不再重複生成定義
Date
日期類型,欄位加上註解 @JSONField(format = "")
,以兼容fastjson全局配置覆蓋format的問題)
欄位定義數據類型增加BigDecimal
類型
非空欄位的樣例數據不再強制填寫,未填寫時可直接提交,由devtools自動生成
BaseExtCustomEntity
被刪除後不再重新生成,以支持不需要extdata
的場景
關聯欄位的可選欄位限定與當前column同類型欄位(默認選中id/uuid),as欄位顯示String類型欄位,使選擇更方便
基於diboot-iam組件,初始生成iam相關可自定義的代碼至本地
基於diboot-file組件,初始生成UploadFileController至本地
項目地址
相關文檔
體驗一下
基於開源項目ant-design-pro-vue
在ant-design-pro-vue項目基礎上,進行精簡
登錄、權限、接口對接上,與diboot-v2相關組件構建的後端應用無縫集成且開箱可用
提取CRUD頁面相關通用屬性與方法到mixins文件中,少寫代碼,多做事情
到按鈕級別的細粒度權限控制
智能化的權限配置方案(點點點即可完成)
自動完成即將過期的授權token交換
預置多種常用請求方式,輕鬆完成異步文件下載等
數據字典管理功能
系統用戶管理界面
角色與權限管理功能
權限管理功能
登錄日誌管理功能
項目地址
相關文檔
體驗一下
基於開源項目vue-element-admin的基礎模板vue-admin-template,在此基礎上進行相關功能集成
在vue-admin-template項目基礎上,增加了vue-element-admin具有的多頁籤、菜單搜索、全屏顯示、調整布局大小等功能
登錄、權限、接口對接上,與diboot-v2相關組件構建的後端應用無縫集成且開箱可用
提取CRUD頁面相關通用屬性與方法到mixins文件中,少寫代碼,多做事情
到按鈕級別的細粒度權限控制
智能化的權限配置方案(點點點即可完成)
自動完成即將過期的授權token交換
預置多種常用請求方式,輕鬆完成異步文件下載等
數據字典管理功能
系統用戶管理功能
角色與權限管理功能
權限管理功能
登錄日誌管理功能