wasRolledBack 方法用于判断事务是否回滚。
语法:
返回值:表示判断结果的 true 或 false,为 true 时表示已经回滚,为 false 时表示未回滚。
判断事务是否回滚,关键代码如下:
try{
tx = session.beginTransaction(); //开启事务
UserForm uf = new UserForm(); //定义JavaBean对象
uf.setUsername(username); //设置对象属性
uf.setPwd(pwd);
session.saveOrUpdate(uf);
tx.commit(); //提交事务
}catch(Exception e){
if(tx!=null){
if(tx.wasRolledBack()){
System.out.println("事务已经回滚");
}else{
System.out.println("事务没有回滚");
}
tx.rollback();//回滚事务
if(tx.wasRolledBack()){
System.out.println("事务已经回滚");
}else{
System.out.println("事务没有回滚");
}
}
}
执行上面的代码,当产生异常信息时,将在控制台显示以下内容:
事务没有回滚
事务已经回滚