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);
    }
}
  • 事务回滚:
相关推荐
信码由缰2 小时前
Spring框架中的Component与Bean注解
java·spring
Re2752 小时前
快速理解Spring Bean 实例化与初始化全过程
后端·spring
程序员秘密基地2 小时前
基于html,css,vue,vscode,java,springboot,mysql数据库,在线考勤,管理系统
java·vue.js·spring·html·web app
JAVA学习通4 小时前
【JavaEE进阶】图书管理系统(未完待续)
java·spring·java-ee
人生偌只如初见4 小时前
SpringAI学习笔记-MCP客户端简单示例
java·spring·ai·client·mcp
Super Rookie7 小时前
Spring Cloud 企业项目技术选型
后端·spring·spring cloud
山海上的风15 小时前
Spring Batch终极指南:原理、实战与性能优化
spring·性能优化·batch·springbatch
找不到、了17 小时前
Spring的Bean原型模式下的使用
java·spring·原型模式
超级小忍17 小时前
Spring AI ETL Pipeline使用指南
人工智能·spring
Boilermaker199220 小时前
【Java EE】SpringIoC
前端·数据库·spring