各位前辈/大神 好:
目前使用spring boot MVC开发后端web程式,使用jdbctemplate写数据库程式,
用到其batchUpdate方法批次更新5万笔资料,共花了26.443秒,执行效能不是很好,
说明如下:
1.软件版本说明:
spring boot 3.0.2
spring-jdbc 6.0.4
mssql-jdbc 12.2.0
数据库 微软SQL Server 2019 Express
作业系统Windows 10
2.程式码:
StocksRepository.java
仅列出batchUpdate方法的程式码
public void batchUpdate(List<stock> stocks) {
jdbc_template.batchUpdate(
"update stocks set amount = ? where parts_number = ?",
new BatchPreparedStatementSetter() {
public void setValues(PreparedStatement ps,int i)
throws SQLException{
ps.setString(1,stocks.get(i).getAmount());
ps.setString(2,stocks.get(i).getParts_number());
}
public int getBatchSize(){
return stocks.size();
}
}//end BatchPreparedStatementSetter
);//end jdbctemplate batchupdate
}