1. 程式人生 > >jdbcTemplate高效批量插入和批量更新 模擬原生jdbc批量10s插入10萬條到mysql

jdbcTemplate高效批量插入和批量更新 模擬原生jdbc批量10s插入10萬條到mysql

1.專案中親測一次性插入10萬條資料差不多用了10s,這時候只能使用原生jdbc,spring框架為我們薄薄的封裝了個jdbcTemplate

思路就是準備插入資料庫的分隔成1萬條(自己根據資料包或網路定具體數量),將sql拼成字串(減少mysql多次訪問的壓力,拿連線和mysql日誌生成的數量),然後在for迴圈中插入

使用jdbcTemplate.batchUpdate(sql)即可。

注意點:使用原生sql時候,需要防止sql注入,還有拼接sql串時候,如果欄位型別是字串且可能為空的情況下,可能會將‘null’字串null值存到資料庫中,專案中的一個坑,判斷時候需要判斷“null”和或者將可能為空的欄位轉換為‘’空串同時判斷空串即可。