工作總結(jié)-----java 開發(fā)規(guī)范總結(jié)

個人工作開發(fā)規(guī)范總結(jié)捞附,慢慢積累巡揍,慢慢進步源内,寫出無可挑剔的代碼

1 java 開發(fā)規(guī)范

? ? ? 1.1 校驗規(guī)范? ? ?字符串判空:org.apache.commons.lang3.StringUtils.isBlank(str); 字符串處理使用StringUtils包處理

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?對象拷貝:BeanUtils#copyProperties? ? ?對象拷貝使用BeanUtils處理

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 數(shù)組校驗:CollectionUtils.isEmpty()

? ? ? ? 1.2 批量查詢? 批量查詢接口必須對傳入的數(shù)組或者不定長度的變量進行校驗毯炮,避免出現(xiàn)一些惡意查詢的情況出現(xiàn)省咨。

? ? ? ? 1.3? 當實體類里面使用了枚舉肃弟,必須對在實體類中對使用了枚舉的字段添加@See注解

? ? ? ? ?1.3 代碼提交之前必須對代碼進行格式化,(ctrl+alt+l )? ?并且必須對代碼的導(dǎo)包進行優(yōu)化 快捷鍵(ctrl+alt+o)或者使用idea的默認配置實
? ? ? ? ? ? ? 現(xiàn)

? ? ? ? ? ?1.4? java開發(fā)編碼環(huán)境設(shè)置統(tǒng)一設(shè)置為utf-8? ?

? ? ? ? ? ?1.5? 命名要有節(jié)操零蓉,不能中英文混用笤受,不要首字母縮寫,單詞要移動有實際意義敌蜂。駝峰命名

? ? ? ? ? ? 1.6? 未使用的包不要引用(ctrl+alt+o 刪除未引用的導(dǎo)包)

? ? ? ? ? ? 1.7? 盡量減少循環(huán)嵌套層次箩兽。盡量少,不可避免時章喉,應(yīng)該通過注釋表明每一個循環(huán)的開始和結(jié)尾分別在什么地方

? ? ? ? ? ? 1.8? ?使用泛型必須指明具體類型

? ? ? ? ? ? 1.9? ?拼接字符串汗贫,有節(jié)操的都不會使用string+(String的不可變性)

? ? ? ? ? ? ?1.10 map遍歷,使用entrySet遍歷map集合kv秸脱,不要使用keySet方式進行遍歷落包。

? ? ? ? ? ? ?1.11? 使用spring框架進行對象注入時候,需要清楚 #Autowired和Resource的區(qū)別摊唇,建議使用@Resource

? ? ? ? ? ? 1.12? 當構(gòu)造函數(shù)參數(shù)過多時咐蝇,建議使用builder模式

? ? ? ? ? ? 1.13? 避免創(chuàng)建不必要的對象,比如在使用正則表達式時遏片,將 Pattern.compile 方法設(shè)置為靜態(tài)方? ? ? ? ? ? ? ? ? ? ? 法嘹害,避免重復(fù)編譯撮竿,使其只在方法區(qū)中編譯成一個對象吮便。

? ? ? ? ? ? 1.14 盡量使用try-with-resources代替try-cache-finally

? ? ? ? ? ? 1.15? 設(shè)計類的成員可訪問性最小化






2 數(shù)據(jù)庫開發(fā)規(guī)范

? ? ? ?2.1更新操作:數(shù)據(jù)庫干的更新操作必須 按照功能來區(qū)分,不能混用幢踏,一般一個update只進行一個更新操作

? ? ? 2.2? 使用持久層框架時候髓需,需要明白# {}${}的區(qū)別,一般不到不得已的時候都是用#{}? ?當需要使用${} 的時候房蝉,必須要對傳入的參數(shù)進行過濾

? ? ? 2.3? 一般來說僚匆,一張表對根據(jù)需求建立一個索引,(建議一張表的額索引不要超過五個)搭幻,sql編寫的時候一定要注意盡量命中索引咧擂。

? ? ? 2.4? 模糊查詢,注意要命中索引哦? 附檀蹋,建議每一條重要的sql都要在終端explain一下松申,查看一下執(zhí)行計劃,sql出現(xiàn)問題都會是重大問題、



3 緩存使用規(guī)范? ? ??

? ? ? ?3.1:對某個表內(nèi)的數(shù)據(jù)進行緩存時候贸桶,需要慎重舅逸,因為在大型項目里面,你可能不知道有多少個地方對這個表進行了crud操作皇筛,需要在這? ? ? ? ? ? ? ? ? ? 些 操作的地方都添加上刪除緩存的操作琉历,不然很容易產(chǎn)生數(shù)據(jù)不能及時更新的bug

? ? ? ?3.2:緩存批量請求key的時候,service需要對請求的key的長度進行限制水醋。






4 異常處理規(guī)范

? ?1 rpc調(diào)用時旗笔,必須進行異常捕獲。

? ? 2??異常信息不允許返回給前端??

? ? 3? 異常信息記錄時候拄踪,必須同時記錄接口參數(shù)换团,讓異常能夠準確定位到某一個用戶。?

? ? 4 當涉及到有資源比如inputstream需要關(guān)閉時宫蛆,必須使用finally進行關(guān)閉艘包,(確保任何狀態(tài)下資源都會被正常關(guān)閉)

? ? 5? 異常記錄




5 日志規(guī)范

? ? 1.避免無效日志打印

? ? ?2 日志記錄必須帶著類名+方法名+入?yún)?異常日志

? ? ?3 大量無用日志會拖慢系統(tǒng)性能,也會增加我們查找日志的難度耀盗。日志記錄想虎,要明確為什么記錄日志,這個日志能解決什么問題叛拷,哪些地方可 能會出?現(xiàn)這些問題舌厨,在這個基礎(chǔ)上,盡量少記日志忿薇,

? ? 4? 不要在循環(huán)中記錄日志

? ?5? 生產(chǎn)環(huán)境需要關(guān)閉debug日志裙椭,我遇到過這個問題,自己買的服務(wù)器上線一個demo,一個月自動產(chǎn)生40G垃圾日志文件署浩,系統(tǒng)出現(xiàn)異常揉燃。




6 備注規(guī)范

? ?1 給每個方法都添加必要的注釋,主要應(yīng)包括? 創(chuàng)建時間筋栋,創(chuàng)建人炊汤,主要功能描述,相關(guān)文檔地址


2 給每一個方法都添加注釋 建議使用 使用Idea提供的代碼模板進行備注(注釋模板需要在方法體內(nèi)進行使用才能獲得正確的信息)

? ? ? ?模板:

/**

??* Method: $methodName$

? ?* Param: $param$

? ?* Return: $return$

? ?* Author: $user$

? ?* Creation: $date$ $time$

? ?* Description: $END$

?*/

3 實體類每一個字段都需要有中文注釋

?4? 有手動編寫的構(gòu)造函數(shù)時候弊攘,建議給構(gòu)造函數(shù)添加注釋

? 5



項目模塊結(jié)構(gòu)

編碼規(guī)范(EOS)\SQL規(guī)范

數(shù)據(jù)庫(連接池配置抢腐,mybatis配置)

事務(wù)使用

異常處理

分布式鎖

并發(fā)框架

讀寫分離組件

監(jiān)控使用

上傳下載組件

唯一ID生成器

JSON序列化組件

參數(shù)校驗組件

單元測試使用

安全規(guī)范

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市襟交,隨后出現(xiàn)的幾起案子迈倍,更是在濱河造成了極大的恐慌,老刑警劉巖捣域,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件啼染,死亡現(xiàn)場離奇詭異醋界,居然都是意外死亡,警方通過查閱死者的電腦和手機提完,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門形纺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人徒欣,你說我怎么就攤上這事逐样。” “怎么了打肝?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵脂新,是天一觀的道長。 經(jīng)常有香客問我粗梭,道長争便,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任断医,我火速辦了婚禮滞乙,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘鉴嗤。我一直安慰自己斩启,他們只是感情好,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布醉锅。 她就那樣靜靜地躺著兔簇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪硬耍。 梳的紋絲不亂的頭發(fā)上垄琐,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天,我揣著相機與錄音经柴,去河邊找鬼狸窘。 笑死,一個胖子當著我的面吹牛口锭,可吹牛的內(nèi)容都是我干的朦前。 我是一名探鬼主播,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼鹃操,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了春哨?” 一聲冷哼從身側(cè)響起荆隘,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎赴背,沒想到半個月后椰拒,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體晶渠,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年燃观,在試婚紗的時候發(fā)現(xiàn)自己被綠了褒脯。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡缆毁,死狀恐怖番川,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情脊框,我是刑警寧澤颁督,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站浇雹,受9級特大地震影響沉御,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜昭灵,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一吠裆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧烂完,春花似錦硫痰、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至柱徙,卻和暖如春缓屠,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背护侮。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工敌完, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人羊初。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓滨溉,卻偏偏與公主長得像,于是被迫代替她去往敵國和親长赞。 傳聞我的和親對象是個殘疾皇子晦攒,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354

推薦閱讀更多精彩內(nèi)容