一、記錄項目開發中一些代碼細節上的處理問題?
月份前去零:cMon= cMon.replaceAll("^(0+)", "").trim();
雙集合合併:同類型,有順序 ---------tbPmMonDonesList.addAll(doneResult);
截取字符串:
String name="helloworld";
System.out.println(name.substring(name.length()-1,name.length()));//輸出d ,從第一個索引開始到最後一個的索引
System.out.println(name.substring(name.length()-1));//輸出d ,索引往後全部
System.arraycopy()方法實現複製,以爲數組值傳遞性(複製),也即不會影響到原來的數組
------這裏都是以索引算的
( 1 ) replace正則匹配方法
去除字符串內所有的空格:str = str.replace(/\s*/g,"");
去除字符串內兩頭的空格:str = str.replace(/^\s*|\s*$/g,"");
去除字符串內左側的空格:str = str.replace(/^\s*/,"");
去除字符串內右側的空格:str = str.replace(/(\s*$)/g,"");
( 2 ) str.trim()方法
去除字符串兩邊的空格,不影響原來的字符串,而是新生成一個;
單獨去除左側空格則使用 str.trimLeft(); //var str_1 = str.trimLeft();
單獨去除右側空格則使用 str.trimRight();//var str_1 = str.trimRight();
( 3 ) JQ方法:$.trim(str)方法
$.trim() 函數用於去除字符串兩端的空白字符。
注意:$.trim()函數會移除字符串開始和末尾處的所有換行符,空格(包括連續的空格)和製表符。如果這些空白字符在字符串 中間時,它們將被保留,不會被移除
JS去除字符串空格問題參考自:https://www.cnblogs.com/a-cat/p/8872498.html (請爲他點個贊)
(4)入參不對應
mybatis方法如果在xml方法中引用多個字段,而在接口方法層入參,選擇了 @Param("xxx")String xxx 這類註解方式。如果個數與xml方法中字段個數不一致,會導致mybatis字段信息報錯
(5) mybatis查詢過多問題
現在大部分xml方法中喜歡使用if標籤進行判斷查詢,但如果查詢標籤全部不滿足,這個時候是會執行全表查詢。可能會導致代碼執行過多。
(6).mySQL查詢的問題
對於正常mysql查詢,如果在查詢條件中出現,xxxA!="xxx" 。這個字段會將 所有 xxxA 字段不爲空並且不等於“xxx” 的符合條件的數據查詢出來,但是對於xxxA字段爲空,他們也是默認條件滿足的,這樣容易導致數據不真實。因此應該儘可能避免在mysql的條件查詢中使用 != 如果必須要使用!如果必須要使用應該在字段上添加唯一索引。