因为你设置自动提交为false,所以必须手动提交,手动提交就是通过写程序来实现,比如stmt.executeupdate("begin;")等等

解决方案 »

  1.   

    你这其实是一种方法,都是用JDBC管理事务。只不过一种是用JDBC内置的方法,另一种是用数据库执行SQL语句的方式。
    你其实也可以用JTA来管理事务。
      

  2.   

    那么用JDBC内置的方法和SQL语句的方法有什么区别呢?
    为什么用我用JDBC内置的方法不可以,而用数据库执行的方式可以呢?
      

  3.   

    你的数据库用的是什么?
    有的数据库对事务是不支持的。
    有的还有JDBC驱动程序的问题。
      

  4.   

    我开头中写的很清楚了,我得数据库是postgresql,当然支持事务,况且我已经用第二种方法执行成功,我想知道为何第一种方法执行不成功。看来csdn上只能问一些入门级的问题,高手是越来越少了
      

  5.   

    你是单独执行此方法的吗?我碰到过这样的情况,在WebApplication中使用第一种方法就会抛出异常,大意是在受管理的事务进程中不可以手动管理事务(大概就是这个意思吧),一直没有解决。你第一种方法执行不成功是出现什么提示信息?