<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                >[info] 1.【強制】POJO 類中布爾類型的變量,都不要加 is。 否則部分框架解析會引起序列化錯誤。 反例:定義為基本數據類型 `boolean isSuccess`;的屬性,它的方法也是 `isSuccess()`,RPC 框架在反向解析的時候,“以為”對應的屬性名稱是 `success`,導致屬性獲取不到,進而拋出異 常。 >[danger] 2.【推薦】接口類中的方法和屬性不要加任何修飾符號(public 也不要加) 保持代碼的簡潔性,并加上有效的 Javadoc 注釋。盡量不要在接口里定義變量,如果一定要定義變量,肯定是與接口方法相關,并且是整個應用的基礎常量。 >[warning] 3.【參考】各層命名規約 **Service/DAO 層方法命名規約** 1. 獲取單個對象的方法用 `get` 做前綴。 2. 獲取多個對象的方法用 `list` 做前綴. 3. 獲取統計值的方法用 `count` 做前綴。 4. 插入的方法用 `save`(推薦)或 `insert` 做前綴。 5. 刪除的方法用 `remove`(推薦)或 `delete` 做前綴。 6. 修改的方法用 `update` 做前綴。 **領域模型命名規約** 1. 數據對象:`xxxDO`,xxx 即為數據表名。 2. 數據傳輸對象:`xxxDTO`,xxx 為業務領域相關的名稱。 3. 展示對象:`xxxVO`,xxx 一般為網頁名稱。 4. `POJO` 是 `DO/DTO/BO/VO` 的統稱,禁止命名成 `xxxPOJO`。 >[success] 4.基本類型與包裝類型的使用標準 【強制】所有的 `POJO` 類屬性必須使用包裝數據類型 【強制】RPC 方法的返回值類型和參數必須使用包裝數據類型 【推薦】所有的局部變量使用基本數據類型 > 說明:`POJO` 類屬性沒有初值是提醒使用者在需要使用時,必須自己顯式地進行賦值,任何 > NPE 問題,或者入庫檢查,都由使用者來保證。 > 正例:數據庫的查詢結果可能是 null,因為自動拆箱,用基本數據類型接收有 NPE 風險。 > 反例:比如顯示成交總額漲跌情況,即正負 x%,x 為基本數據類型,調用的 RPC 服務,調用 > 不成功時,返回的是默認值,頁面顯示為 0%,這是不合理的,應該顯示成中劃線。所以包裝 > 數據類型的 null 值,能夠表示額外的信息,如:遠程調用失敗,異常退出。 >[info] 5.【強制】`POJO`類必須寫`toString`方法。 使用IDE中的工具,自動生成,如果繼承了另一個`POJO`,注意在前面加一下`super.toString`。 使用了`JPA/Hibernate`框架,不要使用 Lombok 的`@toString`注解,有循環調用導致內存溢出的 bug。 >[warning] 6.使用索引訪問String的split方法得到的數組時,需做最后一個分隔符后有無內容的檢查,否則會有拋`IndexOutOfBondsException` 的風險. >[success] 7.【推薦】循環體內,字符串的連接方式,使用`StringBuilder` 的 `append` 方法進行擴展。 說明:反編譯出的字節碼文件顯示每次循環都會 `new` 出一個 `StringBuilder` 對象,然后進行 `append` 操作,最后通過 `toString` 方法返回 `String` 對象,造成內存資源浪費。 反例: ```java String str = "start"; for (int i = 0; i < 100; i++) { str = str + "hello"; } ``` >[danger] 8.【推薦】`final` 可以聲明類、成員變量、方法、以及本地變量,下列情況使用 `final` 關鍵字: 1. 不允許被繼承的類,如:`String` 類。 2. 不允許修改引用的域對象,如:`POJO` 類的域變量。 3. 不允許被重寫的方法,如:`POJO` 類的 `setter` 方法。 4. 不允許運行過程中重新賦值的局部變量。 5. 避免上下文重復使用一個變量,使用 `final` 描述可以強制重新定義一個變量,方便更好 地進行重構
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看