Spring——基于注解的AOP控制事务

基于注解的AOP控制事务

1.拷贝上一次代码

2.applicationContext.xml

xml 复制代码
<!-- 开启spring对注解事务的支持 -->
<tx:annotation-driven transaction-manager="transactionManager"/> 

3.service

java 复制代码
@Service
@Transactional(readOnly=true,propagation= Propagation.SUPPORTS)
public class UserServiceImpl implements UserService {

    @Autowired
    private UserMapper userMapper;
    /**
     * 转账
     * @param source
     * @param target
     * @param money
     */
    @Override
    @Transactional(readOnly=false,propagation=Propagation.REQUIRED)
    public void updateUser(String source, String target, Float money) {
        userMapper.updateUserOfSub(source, money);
        int a = 6/0;
        userMapper.updateUserOfAdd(target, money);
    }
}

4.测试

java 复制代码
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")//加载配置文件
public class ServiceTest {
    @Autowired
    private UserService userService;
    /**
     * 转账业务
     */
    @Test
    public void testUpdate(){
        userService.updateUser("张三丰","宋远桥",1F);
    }
}
  • 事务回滚:
相关推荐
JAVA学习通2 小时前
【JavaEE进阶】图书管理系统(未完待续)
java·spring·java-ee
人生偌只如初见2 小时前
SpringAI学习笔记-MCP客户端简单示例
java·spring·ai·client·mcp
Super Rookie4 小时前
Spring Cloud 企业项目技术选型
后端·spring·spring cloud
山海上的风13 小时前
Spring Batch终极指南:原理、实战与性能优化
spring·性能优化·batch·springbatch
找不到、了14 小时前
Spring的Bean原型模式下的使用
java·spring·原型模式
超级小忍15 小时前
Spring AI ETL Pipeline使用指南
人工智能·spring
Boilermaker199218 小时前
【Java EE】SpringIoC
前端·数据库·spring
写不出来就跑路18 小时前
Spring Security架构与实战全解析
java·spring·架构
sleepcattt19 小时前
Spring中Bean的实例化(xml)
xml·java·spring
小七mod19 小时前
【Spring】Java SPI机制及Spring Boot使用实例
java·spring boot·spring·spi·双亲委派