色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

JAVA開發常用的性能優化有哪些

劉姿婷2年前20瀏覽0評論

JAVA開發常用的性能優化有哪些?

沒有系統地整理過,就說一些常見的吧,想到什么說什么,有一些關于代碼細節,有些可能是一些方法和習慣。

避免過多地創建Java對象:比如在循環中創建對象,創建和回收都需要花費時間;

盡量使用局部變量,或者換一句換說,要根據變量的作用域,把變量定義在合適的地方;

盡量減少計算/操作:這里其實要注意的點很多,一個簡單的例子,入參給了10個ID去查詢數據庫,是循環10遍執行where id=?,還是執行1遍where id in(list);

使用StringBuffer、Collection的時候,如果能夠確認長度/元素數量的話,盡量指定長度/元素數量;因為默認值是比較小的,當它們在做擴展的時候,會有一定性能損耗;

基本數據類型轉為字符串,用toString()而不是+"";

在finally塊中關閉Stream,要養成好習慣;

盡量少使用正則表達式;非要用的話,盡量把Pattern緩存下來;

如果要多線程處理,請使用線程池;

如果不是必須,用HashMap、ArrayList,而不是HashTable、Vector;根據需要選擇使用ArrayList還是LinkedList,反正我一般都是用ArrayList;

在必要的時候捕捉異常,并且不要通過異常控制代碼邏輯和業務流程;

一些在數據庫中的配置參數(不會經常變化),可以在項目啟動的時候或第一次使用的時候,從數據庫中查詢出來,放到內存或緩存中;不要每次用的時候都去數據庫里面查一遍;

接上條,盡量使用懶加載,也就是項目啟動的時候創建or第一次使用的時候創建,選擇后者;

有些開發人員喜歡用HashMap放一些緩存數據,不如直接使用開源的緩存框架,他們會做的更好;

能在客戶端做的話,就不要在服務端做;能在服務端程序里面做的話,就不要在數據庫里面做;比如要做where time > sysdate-1,那么就在程序中把sysdate-1算出來,再交給SQL。

我將持續分享Java開發、架構設計、程序員職業發展等方面的見解,希望能得到你的關注。

java 優化,JAVA開發常用的性能優化有哪些