業務開發性能問題,循環中不使用+拼接字符串、不操作數據庫

循環拼接字符串使用 StringBuilder

public String fun2(String[] arr) {
    StringBuilder res = new StringBulider();
    for(int i=0; i<10; i++) {
        res.append(arr[i]);
    }
    return res.toString();
}

詳見爲什麼在循環中使用運算符+拼接字符串性能低下

循環中避免訪問數據庫

業務開發中,假設有這樣一個接口需要開發,參數是一組 List 數據,你需要對每條數據統計計算並將結果保存到數據庫,設計時需要避免一邊處理數據一邊操作數據庫。

public void analysisData(List<dataBo> list) {
    for(dataBo data : list) {
        //數據處理
        dao.insertData(...);
    }
    
}

上面這樣的寫法在數據量很大時,會引起數據庫性能問題。修改建議是將 list 處理的數據保存在內存中(如:Map中),處理完畢後批量插入數據庫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章