注解方式 – 事务管理一致

天才阿梓 2024-4-24 535 4/24

当一个接口操作两张表时,为了保证数据的一致性避免污染数据。会开启事务注解

 

1、启动类添加启用注解@EnableTransactionManagement

复制代码
@SpringBootApplication @EnableTransactionManagement //开启注解方式的事务管理 @Slf4j public class SkyApplication { public static void main(String[] args) { SpringApplication.run(SkyApplication.class, args); log.info("server started"); } }

2、在需要操作两张表的service添加@Transactional注解

复制代码
@Transactional @Override public void addDish(DishDTO dishDTO) { //添加菜品信息 Dish dish = new Dish(); BeanUtils.copyProperties(dishDTO, dish); dishMapper.addDish(dish); //获取Dish的主键值 Long dishId = dish.getId(); //添加口味信息 List<DishFlavor> dishFlavorList = dishDTO.getFlavors(); if (dishFlavorList != null && !dishFlavorList.isEmpty()) { dishFlavorList.forEach(item -> item.setDishId(dishId)); dishFlavorMapper.addBatch(dishFlavorList); } }

 

- THE END -

天才阿梓

4月24日14:10

最后修改:2024年4月24日
2

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论