在SSM项目中,有关事务回滚的处理,在service层中抛出RuntimeException即可,代码如下:
@Transactional(readOnly = false)
public String save() throws RuntimeException{
// TODO
}
另:注意到部分同学虽然知道业务代码写在service中,但在实际编码中却写错,业务场景如下:
更新考生个人基本信息、个人履历、家庭成员信息。
此过程中千万不要出现在controller中写3个保存方法,分别保存基本信息、个人履历、家庭成员信息!!
正确的写法是:在controller做逻辑判断,然后在service层中提供一个方法,能保存上面3个信息,这样才是一个业务操作,失败一个,才能全部回滚。