请让我知道我们什么时候需要调用方法connection.rollback();什么时候应该调用connection.rollback()方法?
try{
connection = getConnection();
connection.setAutoCommit(false);
pstmt1 = connection.preparedstatement (...);
...
pstt1.executeUpdate();
pstmt2 = connection.preparedstatement (...);
...
pstt2.executeUpdate();
connection.commit();
}catch (Exception sqe) { sqe.printStacktrace();
}finally {
closeQuitely (pstmt1);
closeQuitely (pstmt2);
closeQuitely (connection);
}
在上面的代码中,我们没有使用connection.rollback(),但如果出现一些异常,甚至那么一切都将正常工作[我猜],COS连接在自动提交=虚假模式已设置。
那么当我们需要使用这种方法时可能会出现什么情况。请张贴示例。
简单的回答:程序员不应该手动调用rollback()或commit()。 – SteveD 2009-09-02 10:14:15
除了学习JDBC,编写库/框架或者做一些关键性能,我不会推荐使用原始JDBC--使用Spring,JPA或其他框架来自动处理事务和连接。这太容易搞砸了互动,并有大量的样板代码。 – SteveD 2009-09-02 10:17:43