Spring 为事务管理提供了丰富的功能支持。Spring 事务管理分为编程式和声明式的两种方式。编程式事务指的是通过编码方式实现事务;声明式事务基于 AOP,将具体业务逻辑与事务处理解耦。声明式事务管理使业务代码逻辑不受污染, 因此在实际使用中声明式事务用的比较多。声明式事务有两种方式,一种是在配置文件(xml)中做相关的事务规则声明,另一种是基于 @Transactional 注解的方式。
既然我们使用spring boot 进行开发,使用事务也就变得很简单了。我们只需要在我们需要事务管理的service 方法中加上 @Transactional 注解,就会自动进行事务管理了。
@Transactional public void updateAndinsert(User user) { User user1=new User(); user1.setUserid("test"); user1.setNickname("呼呼"); update(user1); user.setUserid("jjfjj"); user.setUsername("hahahah"); user.setPassword("hhhhhhhhh"); user.setHashsalt("hhhhhhhhhhh"); addUser(user); }
上面的方法包含一个 update 和一个 insert 。只有都执行成功了,才会提交事务,失败了就会回滚。
具体可以参考:
https://blog.csdn.net/nextyu/article/details/78669997