阿里巴巴編碼規約學習之異常日誌

2021-10-10 07:31:29 字數 1382 閱讀 3200

異常一定要處理,不能捕獲以後,之列印出來什麼都不管。比如某個業務層的方法中,對乙個異常做了捕獲,catch塊僅僅是列印出了異常,這種情況下異常是不容易被發現的,也就是異常被吞掉了

如果這個時候上層方法有事務註解,甚至會和spring的事務衝突

專案中異常的幾個注意事項

空指標是乙個很常見的異常了

這裡也引入我的兩個筆記供參考

處理空值的幾種標準做法

stream高階之optional

這就是契約式程式設計的重要性了,錯誤碼的規範在業界也是乙個統一的標準

其實還是方法的單一性職責

電腦科學領域的任何問題都可以通過增加乙個間接的中間層來解決,直接使用日誌系統的話,日誌系統與系統本身的耦合度太高了,所以加個中間層來解耦是乙個最佳方式。

測試或者生產的系統,日誌最好根據一定的格式來輸出,比如按天按時間點等,以便問題的排查

乙個細節點吧,介面中輸出日誌還是要注意的

log4j的日誌級別

這裡假設我們pro環境日誌級別是info,dev是debug,那麼**中必然會包含logger.debug的**,如果這部分**到了生產,它確實不會列印出來,但是如果引數有字串拼接或者引數有物件等,還是會執行的,浪費了系統資源。這種情況,就可以把debug的列印語句前加個判斷

生產不幸遇到過這樣的問題,就是日誌積累的量太多了

阿里巴巴編碼規約學習之安全規約

乙個成熟的系統都是要專門的鑑權機制的,比如微服務中的鑑權元件,或者單體應用中的 也可以起到類似的作用,市面上的鑑權手段多樣,這裡主要是說明許可權控制的重要性。在設計的時候,就要考慮到如果有別有用心的使用者,得到了其他使用者的訪問請求,加以修改,如果沒有許可權控制的話,是容易出大事的 手機號 身份證號...

阿里巴巴編碼規約學習之MYSQL資料庫

這個怎麼說呢,其實也有用y和n的,甚至有用success的,感覺有點亂,有個統一的標準還是好事,起碼乙個產品或者乙個系列的東西應該在這一點上是統一的 雖然說這個大小寫敏感的配置是可以修改的,但還是統一小寫比較好,不像oracle 注意有些 複數 表名其實是單詞的本義,並不是複數 之前也有用欄位名 u...

阿里巴巴開發規約之命名風格

我下邊總結的只是我自己平時需要注意的 1.userdo而不是userdo 2.方法名,成員變數名,區域性變數名,引數名統一用lowercamelcase駝峰標識 3.常量全部大寫用下劃線隔開,並且力求語意完整,不論多長,4.boolean型別的常量不要加是字首,否則容易引起框架異常,5.為了 自解釋...