Spring的jdbctemplate的批量更新,不执行BatchPreparedStatementSetter里的setValues方法
Spring的jdbctemplate的批量更新,不执行BatchPreparedStatementSetter里的setValues方法(打印不出“666”)。
代码如下:
--------------------------------------------------------------------------------------------------------------------------------------
public void update_rs_main_batch(final List<Dwr_rs_main> list1)
{
String sql= "update rs_main set stuff_status=? where company_num=? and worker_code=?";
jdbctemp.batchUpdate(sql, new BatchPreparedStatementSetter()
{
@Override
public void setValues(PreparedStatement ps,int i)throws SQLException
{
System.out.println("666");
Dwr_rs_main list2 = list1.get(i);
ps.setString(1, list2.getStuff_status());
ps.setString(1, list2.getCompany_num());
ps.setString(1, list2.getWorker_code());
}
@Override
public int getBatchSize()
{System.out.println( list1.size());
return list1.size();
}
});
}