【发布时间】:2011-12-16 08:07:45
【问题描述】:
我正在尝试让我的 DAO 以这种方式工作:
public void incrementNumber(long id) throws Exception{
Session session = factory.openSession();
Number n = (Number)session.load(Number.class, id);
n.setNumber(n.getNumber() +5);
// throw new IllegalArgumentException("BLAH");
session.close();
}
- 通过注释掉异常,更新将提交。
- 通过取消注释(?)异常,它将回滚。
有什么方法可以做到这一点?注意:事务部分是在服务中完成的,在事务注释下。
【问题讨论】:
-
make it in try...catch 类似:try {....do the hibernate stuff...} catch (illegalargumentexception e) {session.rollback();} finally {session.关闭}
标签: java hibernate commit rollback