1. 代碼格式
左小括號和字符之間不出現(xiàn)空格;同樣,右小括號和字符之
間也不出現(xiàn)空格
反例 : if (空格 a == b 空格)
if/for/while/switch/do等保留字與括號之間都必須加空格。
任何二目、三目運算符的左右兩邊都需要加一個空格
運算符包括賦值運算符=、邏輯運算符&&、加減乘除符號等。
2.代碼邏輯
【強制】構(gòu)造方法里面禁止加入任何業(yè)務(wù)邏輯,如果有初始化邏輯,
請放在 init方法中。
【推薦】使用索引訪問用 String的 split方法得到的數(shù)組時,需做最后
一個分隔符后有無內(nèi)容的檢查,否則會有拋
IndexOutOfBoundsException的風(fēng)險。
String str = "a,b,c,,";
String[] ary = str.split(",");
// 預(yù)期大于 3,結(jié)果是 3
3.集合處理
關(guān)于 hashCode和 equals的處理,遵循如下規(guī)則:
只要重寫 equals,就必須重寫 hashCode,因為equals比較之前先比較hashCode(比較的是屬性的某個特性,如長度一樣)map集合為null情況
4.開發(fā)注意
在service層不要做事務(wù)控制,即使做業(yè)務(wù)控制,最后也要拋出,后面會做統(tǒng)一的事務(wù)攔截。
service中查詢方法一律使用get開頭。Insert,update,delete要返回操作行數(shù),做行數(shù)判斷,得出操作成功的結(jié)論,不能通過是否捕獲異常來判斷執(zhí)行是否正確。
for循環(huán)正確寫法:for (var i =0,length=dataObj.length; i< length; i++){//方法體}。
service層是提供通用、標準服務(wù)的,返回結(jié)果就好了,不要做封裝,應(yīng)該直接返回,封裝都是在controller層根據(jù)頁面邏輯進行的。
