基于阿里開發(fā)規(guī)范
命名
命名帶單位
數(shù)組用s 集合用list/set
crontroller和菜單對應
如何寫好一個api
路徑映射
只用post
@api注解 dto vo 除了通用模板 不要使用繼承 即使重復拷貝也可以 使用靜態(tài)內(nèi)部類 @apimodel名字使用 外部類名-內(nèi)部類名
定義Basedto通用傳參易稠,JsonResponse通用返回
@validate @valid注解驗證
@log注解日志
@tableAlias注解离唬,指定表的別名家凯,用于前端通用排序轿衔。
分頁和排序交由前端指定 后端使用pagehelper.startpage處理 所有表需要提前定義別名 如果是自連接 主表必須使用別名xx 從表使用xx1 xx2等
一對多分頁的通用做法 查詢一表然后在resultmap中指定select查詢多表
代碼中循環(huán)查詢也可以接受 優(yōu)先推薦第一種
傳參規(guī)范
禁止使用012? 用枚舉字符串代替
使用標準basedto和JsonResponse結(jié)構(gòu)
日期傳參用 2023-03-06 12:03:56標準格式夷家,如果沒有時間 手動添加梳毙,比如選擇日期 但傳參時應為日期+時間
日期范圍最后添加23:59:59
前端規(guī)范
表格需要處理排序和分頁
服務規(guī)范
文件服務 添加存儲路徑 斷點續(xù)傳 md5判定等功能
日志服務 添加文件日志功能
mybatisgenerator改進徙赢,增加別名赂弓,增加selectone枢里,增加batchinsert
驗證pagehelper排序是否覆蓋sql原有排序
mybatis攔截器處理delstatus 兼容delflag 根據(jù)反射判斷字段名稱進行處理
數(shù)據(jù)庫規(guī)范
相同模塊的表使用相同的前綴孽鸡,例如:dms_xxx
索引命名統(tǒng)一使用?
? ? * idx_索引列1_索引列2的命名方式
? ? * uni_索引列1_索引列2的命名方式
所有表必須有別名
定義表結(jié)構(gòu)并定義別名
id, created_at,created_by栏豺,updated_at彬碱,updated_by,del_status
數(shù)據(jù)庫盡可能使用datetime類型 不要使用long類型 除非不滿足