gpt4 book ai didi

java - 通过 jdbcTemplate.update(List) 更新 JdbcTemplate

转载 作者:行者123 更新时间:2023-12-01 18:37:36 27 4
gpt4 key购买 nike

我正在使用 Spring Batch。如何在单个数据库调用中更新所有记录?

@Autowired
private JdbcTemplate jdbcTemplate;

@Override
public void write(List<? extends Users> users) throws Exception {

String updateQuery = "update users set ddp_created_fl=? where email=?";

for(Users user:users) {
jdbcTemplate.update(updateQuery, 1, user.getEmail());
}
}

最佳答案

您可以使用batchUpdate在单个数据库调用中更新所有记录。

public void write(List<Users> users) throws Exception {
String updateQuery = "update users set ddp_created_fl=? where email=?";

jdbcTemplate.batchUpdate(updateQuery,
new BatchPreparedStatementSetter() {

public void setValues(PreparedStatement ps, int i)
throws SQLException {
ps.setLong(1, 1);
ps.setString(2, users.get(i).getEmail());
}

public int getBatchSize() {
return users.size();
}

});
}

关于java - 通过 jdbcTemplate.update(List) 更新 JdbcTemplate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60005517/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com