文章目錄
- 專案地址
- seata、nacos等服務端下載
- 架構說明
- 主要功能介紹
- 模塊介紹
- 全域處理
- 全域字典ID轉Name功能
- 全域例外捕捉
- 全域鑒權攔截
- 第三方工具介紹
- JWT
- Mybatis Plus
- MapStruct
- Hutool
- mapstruct
專案地址
https://gitee.com/zengzefeng/easy-frame
seata、nacos等服務端下載
- docker安裝
https://blog.csdn.net/qq_38688267/article/details/111590569 - widnows版下載
鏈接:https://pan.baidu.com/s/1S6wa06MfYKDp1yxFT-jwOQ
提取碼:1234
復制這段內容后打開百度網盤手機App,操作更方便哦
架構說明
- 框架:spring-cloud2.2.5.RELEASE, spring-boot2.3.5.RELEASE, mybatis3.5.6
- 資料庫: mysql8.0.24, redis, mongodb …(后續可能會用到hBase,TiDB等)
- 架構組件:gateway, open-feign, sentinel, nacos1.4.0
- 功能組件: sharding-jdbc4.1.1, rabbit-mq, seata1.4.0, actuator, xxl-job, prometheus, grafana等
主要功能介紹
- 基于sharding-jdbc的讀寫分離
- 基于seata的分布式事務
- 基于nacos和gateway的動態路由和黑白名單
- 集成mybatis-plus簡化開發、自動填充、代碼生成
- 基于actuator+prometheus+grafana的服務狀態監控
- 自定義授權邏輯
- 自定義分頁
- 各種封裝好的工具類
模塊介紹
-
ifm-common
工具父模塊-
ifm-common-redis
redis模塊,提供redis工具類和redis分布式鎖 -
ifm-common-msg
訊息工具模塊 -
ifm-common-gateway
網關模塊,實作動態路由和登錄態檢測 -
…
-
-
ifm-base
工具父模塊-
ifm-base-service
service父模塊,用于統一管理依賴和公共類 -
ifm-base-api
api父模塊,用于統一管理依賴和公共類 -
ifm-base-auth
權限模塊,提供權限相關功能 -
…
-
-
ifm-servers
功能服務父模塊-
ifm-servers-insp
巡檢管理- ifm-servers-insp-service
業務邏輯 - ifm-servers-insp-api
開放介面
- ifm-servers-insp-service
-
ifm-servers-sys
系統平臺- ifm-servers-sys-service
業務邏輯 - ifm-servers-sys-api
開放介面
- ifm-servers-sys-service
-
…
-
-
ifm-tools
其他提供單獨服務-
ifm-tools-job
定時任務模塊 -
ifm-tools-generate
代碼生成模塊 -
…
-
全域處理
全域字典ID轉Name功能
??DictFieldFillUtil
全域例外捕捉
??GlobalExceptionHandler
全域鑒權攔截
- 授權(包括黑白名單):AuthenticationFilter
- 鑒權:AuthenticationInterceptor
?
第三方工具介紹
JWT
- 用于生成有加密資訊的token
- 官網:https://jwt.io/
Mybatis Plus
- mybatis增強,提供靈活的基礎CRUD方法、代碼生成等功能
- 官網:https://mp.baomidou.com/
MapStruct
- 基于注解生成物件轉換的工具,簡化了Java bean型別之間映射的實作
- 官網:https://mapstruct.org/
Hutool
- 一個小而全的Java工具類別庫,通過靜態方法封裝,
- 官網:https://www.hutool.cn/docs/#/
- 系統中用該工具類替代自定義工具類,根據需要引入對應依賴:
| 模塊 | 介紹 |
|---|---|
| hutool-aop | JDK動態代理封裝,提供非IOC下的切面支持 |
| hutool-bloomFilter | 布隆過濾,提供一些Hash演算法的布隆過濾 |
| hutool-cache | 簡單快取實作 |
| hutool-core | 核心,包括Bean操作、日期、各種Util等 |
| hutool-cron | 定時任務模塊,提供類Crontab運算式的定時任務 |
| hutool-crypto | 加密解密模塊,提供對稱、非對稱和摘要演算法封裝 |
| hutool-db | JDBC封裝后的資料操作,基于ActiveRecord思想 |
| hutool-dfa | 基于DFA模型的多關鍵字查找 |
| hutool-extra | 擴展模塊,對第三方封裝(模板引擎、郵件、Servlet、二維碼、Emoji、FTP、分詞等) |
| hutool-http | 基于HttpUrlConnection的Http客戶端封裝 |
| hutool-log | 自動識別日志實作的日志門面 |
| hutool-script | 腳本執行封裝,例如Javascript |
| hutool-setting | 功能更強大的Setting組態檔和Properties封裝 |
| hutool-system | 系統引數呼叫封裝(JVM資訊等) |
| hutool-json | JSON實作 |
| hutool-captcha | 圖片驗證碼實作 |
| hutool-poi | 針對POI中Excel和Word的封裝 |
| hutool-socket | 基于Java的NIO和AIO的Socket封裝 |
| hutool-all | 包含以上所有模塊,一般情況下不要直接依賴這個 |
mapstruct
- 是一個代碼生成器,它基于約定優于配置的方法大大簡化了Java bean型別之間映射的實作,
- 官網:https://mapstruct.org/
更多內容請到gitee專案中查看
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/239656.html
標籤:其他
上一篇:Seata集成實戰
下一篇:Redis-學習筆記分享
