今天在学习jdbc是遇到了一个问题,关于批量操作的
以下是我的代码:
@Test
public void testinsert() throws Exception {
Connection con = null;
PreparedStatement ps = null;
try {
long time = System.currentTimeMillis();
con = jdbcutil.getconntion();
String sql = "insert into food (food_name) value(?)";
ps = con.prepareStatement(sql);
for (int i = 1;i <= 3000;i++){
ps.setObject(1,"food_name"+i);
ps.addBatch();
if(i % 500 == 0){
System.out.println(i);
ps.executeBatch();
ps.clearBatch();
}
}
long end = System.currentTimeMillis();
System.out.println("需要的时间为"+(end-time));
} catch (Exception e) {
e.printStackTrace();
} finally {
jdbcutil.close(con,ps);
}
不知道为什么我的批量操作没有用,我也加了rewriteBatchedStatements=true
但是和没加的一样,不加的时候我的代码也可以批量运行,加了速度还是一样的,不知道哪里错了,来个好兄弟教一下99999999999999999
运行时间是6s,加没加都是6s
是我电脑太垃圾了吗???????