批量更新操作使用如下代码:
第二种方法:重载PreparedStatementCreator,请看代码:
第三种方法:直接使用SQL
public int[] updatePerson(final String[] ids)
{
String sql ="update person set address=? where id=?";
BatchPreparedStatementSetter setter = new BatchPreparedStatementSetter(){
public void setValues(PreparedStatement ps,int i) throws SQLException{
ps.setString(1, "benling.l@gmail.com");
ps.setInt(2, Integer.parseInt(ids[i]));
}
public int getBatchSize(){
return ids.length;
}
};
return this.getJdbcTemplate().batchUpdate(sql, setter);
}
第二种方法:重载PreparedStatementCreator,请看代码:
public void insertUsers(User ur)
{
this.getJdbcTemplate().update(new PreparedStatementCreator()
{
public PreparedStatement createPreparedStatement(Connection con) throws SQLException
{
String sql = "insert into user (name,age) values(?,?)";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1,"");
ps.setInt(2,0);
return ps;
}
});
}
第三种方法:直接使用SQL
jdbcTemplate.update("insert into user (name,age) "+"values (' " + name + " ', " +age +")");