gpt4 book ai didi

java - ReadyStatementSetter 问题

转载 作者:太空宇宙 更新时间:2023-11-04 09:58:23 25 4
gpt4 key购买 nike

为什么我的代码导入最后一行两次?每行从 0 到 x 都可以,然后再添加一次最后一行..

@Override
public void batchUpt2(User_FK users) {
long startTime = System.nanoTime();
jdbcTemplate.update("INSERT INTO INS_RAZNO.BULK_TEST VALUES (?, ?, ?)", new PreparedStatementSetter() {
public void setValues(PreparedStatement ps) throws SQLException {
int x;
int size = users.getUser().size();
for(x = 0; x < size; ++x) {
ps.setInt(1, x + 1);
ps.setLong(2, users.getUser().get(x));
ps.setInt(3, users.getSys());
ps.addBatch();
}ps.executeBatch();
}

});
long endTime = System.nanoTime();
long duration = (endTime - startTime) / 1000000;
System.out.println("-------------"+duration+"-----------------forEach");

}

我在参数中有这个“user”:[1,2,3,4,5,6],但有 7 个插入。结果位于第 1,2,3,4,5,6,6 行

最佳答案

也许最后一个用户在源列表中添加了两次。您可以通过在 setValues() 中打印源列表的大小来检查

关于java - ReadyStatementSetter 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53816219/

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