假设我有以下示例:
@Transactional(propagation=Propagation.SUPPORTS, readOnly=true)
public class MyServiceImpl implements MyService {
...
@Transactional(propagation=Propagation.REQUIRED, readOnly=false)
public TransactionResponse addMyEntity(MyEntity e) throws SQLException{
...
}
...
}
在我的应用程序上下文中:
<tx:annotation-driven transaction-manager="txManager" />
好的,现在如果抛出 SQLException,我想在事务回滚后添加一个拦截器。我怎样才能做到这一点?
提前致谢
编辑
我将尝试澄清我正在尝试做的事情:
我有一个 WS,它在数据库上保留一些信息并返回一个响应(如果出现问题,一个 isOk 布尔值和一个 errorMessage)
每当出现异常时,我需要:
- 回滚事务
- 使用错误消息构建响应并将其返回给客户端。
这就像 spring 的事务代理的 try/catch