问答详情
源自:3-9 添加学生资料-实现添加学生资料业务逻辑

抛出异常为什么用tx.commit();而不用tx.rollback();

正常情况下不是程序运行正常用commit()方法,抛出异常程序回滚,用rollback()方法么?

http://img.mukewang.com/58aa566300016f9806880357.jpg

提问者:慕粉6743111 2017-02-20 10:38

个回答

  • 你我渐行渐远
    2017-06-07 19:36:00

    我想问一下session变量是在try里面的,在finally会报错的

  • _Everglow
    2017-02-24 14:27:43

    恩,如果写的更标准一些应该是如下的

     catch (Exception e) {
    			if(tx!=null)
    				tx.rollback();
    			e.printStackTrace();
    			throw e;
    		     }finally{
    		        if(session!=null&&session.isOpen())
    			session.close(); 
    		     }