其它
1. 【強制】在使用正則表達式時,利用好其預編譯功能,可以有效加快正則匹配速度。
說明:不要在方法體內(nèi)定義: Pattern pattern = Pattern . compile( 規(guī)則 );
2. 【強制】 velocity 調(diào)用 POJO 類的屬性時,建議直接使用屬性名取值即可,模板引擎會自動按規(guī)范調(diào)用 POJO 的 getXxx() ,如果是 boolean 基本數(shù)據(jù)類型變量 (boolean 命名不需要加 is
前綴 ) ,會自動調(diào)用 isXxx() 方法。
說明:注意如果是 Boolean 包裝類對象,優(yōu)先調(diào)用 getXxx() 的方法。
3. 【強制】后臺輸送給頁面的變量必須加 $!{var} ——中間的感嘆號。
說明:如果 var = null 或者不存在,那么 ${var} 會直接顯示在頁面上。
4. 【強制】注意 Math . random() 這個方法返回是 double 類型,注意取值的范圍 0≤ x <1 ( 能夠取到零值,注意除零異常 ) ,如果想獲取整數(shù)類型的隨機數(shù),不要將 x 放大 10 的若干倍然后取整,直接使用 Random 對象的 nextInt 或者 nextLong 方法。
5. 【強制】獲取當前毫秒數(shù) System . currentTimeMillis(); 而不是 new Date() . getTime();
說明:如果想獲取更加精確的納秒級時間值,用 System . nanoTime() 。在 JDK 8 中,針對統(tǒng)計時間等場景,推薦使用 Instant 類。
6. 【推薦】盡量不要在 vm 中加入變量聲明、邏輯運算符,更不要在 vm 模板中加入任何復雜的邏輯。
7. 【推薦】任何數(shù)據(jù)結(jié)構(gòu)的構(gòu)造或初始化,都應(yīng)指定大小,避免數(shù)據(jù)結(jié)構(gòu)無限增長吃光內(nèi)存。
8. 【推薦】對于“明確停止使用的代碼和配置”,如方法、變量、類、配置文件、動態(tài)配置屬性等要堅決從程序中清理出去,避免造成過多垃圾。