在Hiberate事务中,如果出现抛异常或者其它原因导致没有执行commit或rollback方法时,很可能会造成数据库中数据不一致现象的产生,代码如下: 
Transaction tx = session.beginTransaction() ; 
//user这个时候是持久态(Persisent),所以对password的操作将影响数据库的记录 
user.setPassword("eeeeeeeeee") ; 
//清空了user对象 
user = null ; 
//然后又调用user对象中的方法 
System.out.println(user.getPassword()); 
//这样就会抛出异常,事务就不提交也不回滚了 
tx.commit() ; 
大家对这个问题怎样看,是否有安全隐患,应该怎样解决 .
补充:我的user到这里已经调用Session.save()了,我这样写的目的是模拟在提交或回滚之前,可能有些代码会发生异常,导致不能提交或回滚,并不是真正的业务代码,请大家不要关注于业务逻辑是否合理.