snail
介紹
snail為一款個(gè)人發(fā)起的開源項(xiàng)目 主要面向?qū)ο笫瞧髽I(yè)級(jí)開發(fā) 簡化開發(fā)成本提升開發(fā)效率 減少重復(fù)造輪子 大家共同努力早日脫離苦海
包含什么
- snail-build 一款基于gradle的腳手架構(gòu)建工具,內(nèi)置了簡易的bom聲明方式,插件引用方式和規(guī)范化的包結(jié)構(gòu)
- snail-platform 基于snail-build搭建的平臺(tái)框架 代碼嚴(yán)格遵循阿里編程規(guī)范 包含了對(duì)spring-data-jpa,spring-data-mongo,spring-data-redis父晶,springCloud票编,springSecurity的集成踪古,提供了基于queryDsl的代碼生成器(保證用的爽)
- snail-cloud-demo 基于snail-build和snail-platform做的一個(gè)demo
解決什么問題
- snail-build解決了基于gradle開發(fā)時(shí)的多模塊協(xié)同開發(fā)問題
-
- snail-platform
- 嚴(yán)格遵循阿里編程規(guī)范 制定了異常規(guī)范和結(jié)構(gòu)返回統(tǒng)一模型
異常前綴 錯(cuò)誤產(chǎn)生來源分為 A/B/C须揣, A 表示錯(cuò)誤來源于用戶葛虐,比如參數(shù)錯(cuò)誤溜腐,用戶安裝版本過低译株,用戶支付超時(shí)等問題; B 表示錯(cuò)誤來源于當(dāng)前系統(tǒng)挺益,往往是業(yè)務(wù)邏輯出錯(cuò)歉糜,或程序健壯性差等問題; C 表示錯(cuò)誤來源于第三方服務(wù)望众,比如 CDN 服務(wù)出錯(cuò)匪补,消息投遞超時(shí)等問題;四位數(shù)字編號(hào)從 0001 到 9999
- 內(nèi)部高度模塊化 可插拔 開箱即用
- 基于queryDsl解決了spring-data-jpa使用時(shí)的晦澀問題烂翰,基于對(duì)象夯缺,但是sql仍然是一等公民
public List<AuthResourceRoleBo> findResourcesByRoleIds(List<Long> roleIds) { return QueryDsl.getQuery() .select(Projections.fields(AuthResourceRoleBo.class, QAuthResourceDo.authResourceDo.id, QAuthResourceDo.authResourceDo.method, QAuthResourceDo.authResourceDo.name, QAuthResourceDo.authResourceDo.url, QAuthRoleResourceDo.authRoleResourceDo.roleId)) .from(QAuthRoleResourceDo.authRoleResourceDo) .leftJoin(QAuthResourceDo.authResourceDo) .on(QAuthRoleResourceDo.authRoleResourceDo.resourceId.eq(QAuthResourceDo.authResourceDo.id)) .where(QAuthRoleResourceDo.authRoleResourceDo.roleId.in(roleIds)).fetch();
- 代碼生成器 執(zhí)行代碼生成即可完成標(biāo)準(zhǔn)化的增刪改查 并附帶單元測試
- 對(duì)于spring-security,spring-session,jwt的統(tǒng)一集成且可混用 支持區(qū)域內(nèi)session共享和區(qū)域外secretToken授權(quán)
- 支持區(qū)域內(nèi)session共享
- 支持jwt 且支持jwt自定義加鹽
- 支持secretToken的自定義生成和獲取
- 支持各種鑒權(quán)關(guān)鍵節(jié)點(diǎn)的自定義擴(kuò)展 對(duì)擴(kuò)展開放對(duì)修改關(guān)閉
參與貢獻(xiàn)
添加微信jianlin1215 備注:目的 當(dāng)前職位
通過后我會(huì)將大家拉到群里 我們統(tǒng)一進(jìn)行開發(fā)
or welcome PR
未來的目標(biāo)
- 文檔會(huì)持續(xù)補(bǔ)全
- 每天晚上會(huì)對(duì)代碼進(jìn)行評(píng)審并合并
- 將項(xiàng)目的標(biāo)準(zhǔn)化部署方案 docker-compose k8s 集成進(jìn)來
- 將spring-cloud組件集成進(jìn)來
- skywalking
- sentinel
- 將spring-cloud組件集成進(jìn)來
- 持續(xù)添加模塊
- 流程引擎
- websocket
- elasticsearch
- flink
- monitor
- rabbitmq
- fileupload等
- 持續(xù)添加模塊