spring事物回滚

来源:百度知道 编辑:UC知道 时间:2024/06/30 07:29:25
我用ssh组合的一个小程序,在事物处理中,我专门给事物设置了一个错误要他抛出异常。但是怎么试都不能让事物回滚,请教一下。以下是代码
public boolean executeTransaction()
{
try
{
User user = new User();
user.setAge(111);
user.setFirstName("能");
user.setLastName("不能");
this.userDAO.addUser(user);
user = this.userDAO.findUserById(2);
user
.setLastName("星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星星");
this.userDAO.updateUser(user);
return true;
} catch (Exception ex)
{
//TransactionAspectSupport.currentTransactionStatus()
//.setRollbackOnly();
throw new RuntimeException();
}

}
update操作是错误的,但是第一条插入操作还是会进行,无论我是让此方法跑出异常还是自己捕获,都不行啊。高手指点一下。

你的配置并没有错
所有execute开头的方法都会进入事物的切面。

但是你要注意了,你的事物是配置在transactionDAO中的,也就是transactionDAO中的以execute开头的方法才会参与事物,说道这知道怎么改了么?

运行时异常会回滚,你的事务是怎么配置的?

你关闭自动提交没?
你事务开始在那里?

你就没加事务控制,你还打算让它自己回滚啊!