如何使用jdbcTemplate进行批量更新操作?
- 内容介绍
- 文章标签
- 相关推荐
本文共计198个文字,预计阅读时间需要1分钟。
javapublic void batchUpdate(List students) { String sql=UPDATE Student SET age=? WHERE id=?; int[] updateCounts=jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() { public void setValues(PreparedStatement ps, int i) throws SQLException { Student student=students.get(i); ps.setInt(1, student.getAge()); ps.setInt(2, student.getId()); } });}
String sql = "update Student set age = ? where id = ?";
int[] updateCounts = jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
public void setValues(PreparedStatement preparedStatement, int i) throws SQLException {
System.out.println("i = " + i);
preparedStatement.setInt(1, students.get(i).getAge());
preparedStatement.setInt(2, students.get(i).getId());
}
public int getBatchSize(){
return students.size();
}
});
System.out.println("Records updated!");
在上面语法中 -
SQL - 更新语句以更新学生的年龄。
BatchPreparedStatementSetter - 批量执行者,在PerparedStatement对象中设置每个项目的值,由学生对象和索引i列出。 getBatchSize()返回批处理的数量。
jdbcTemplateObject - NamedParameterJdbcTemplate对象来更新数据库中的学生对象。
updateCounts - int数组包含每个更新查询更新的行计数(数量)。
本文共计198个文字,预计阅读时间需要1分钟。
javapublic void batchUpdate(List students) { String sql=UPDATE Student SET age=? WHERE id=?; int[] updateCounts=jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() { public void setValues(PreparedStatement ps, int i) throws SQLException { Student student=students.get(i); ps.setInt(1, student.getAge()); ps.setInt(2, student.getId()); } });}
String sql = "update Student set age = ? where id = ?";
int[] updateCounts = jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
public void setValues(PreparedStatement preparedStatement, int i) throws SQLException {
System.out.println("i = " + i);
preparedStatement.setInt(1, students.get(i).getAge());
preparedStatement.setInt(2, students.get(i).getId());
}
public int getBatchSize(){
return students.size();
}
});
System.out.println("Records updated!");
在上面语法中 -
SQL - 更新语句以更新学生的年龄。
BatchPreparedStatementSetter - 批量执行者,在PerparedStatement对象中设置每个项目的值,由学生对象和索引i列出。 getBatchSize()返回批处理的数量。
jdbcTemplateObject - NamedParameterJdbcTemplate对象来更新数据库中的学生对象。
updateCounts - int数组包含每个更新查询更新的行计数(数量)。

