假设我在我的服务层中标记方法@Transactional(rollbackFor = PersistenceException.class)
并在方法中有如下的catch块。
try{
serverStore.update(persistableObject);
} catch (PersistenceException e) {
}
我是否会捕获PersistenceException?
我问,因为我所守护的持久性异常是一个间歇性的死锁问题,我不知道自从这次改变后我是否还没有复制它,或者它不应该出现。
答案 0 :(得分:3)
这取决于您如何刷新会话(实体管理器)。默认情况下,我认为,在提交事务时它将获得刷新,因此您将无法捕获该方法中的异常。