jdbc setAutoCommit无效
//事务,批量执行sql
public void executeMulSql(List<String> sqls) {
Connection conn = getConnection();
Statement stmt = null;
try {
// 取消自动提交
conn.setAutoCommit(false);
stmt = conn.createStatement();
for (int n = 0; n < sqls.size(); n++) {
System.out.println(sqls.get(n));
stmt.addBatch(sqls.get(n));
}
stmt.executeBatch();
conn.commit();
} catch (SQLException e) {
try {
conn.rollback();
} catch (SQLException e1) {
e1.printStackTrace();
}
e.printStackTrace();
} finally {
try {
// 清除批处理参数
stmt.clearBatch();
conn.setAutoCommit(true);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
//当执行到stmt.executeBatch();时,去数据库看了看数据还是进去了,并且在rollback的时候的没有效果。大侠帮忙。。