Live2D

多数据源事务

写在前面 : 由于手上的项目马上要上线了,会涉及到多个数据源,这里就会产生问题 ——> 用了@Transactional加事务之后,改变一个库的数据,其他库数据不会同时改变,所以这里考虑到多数据源事务,之前没有接触过,我们一起来学习吧

一、什么是多数据源

多数据源 : 在一个方法中,需要操作多个数据库,即用到了多数据源

二、多数据源事务

@Transactional 是 spring 中的注解。

  • 它只能用于单个connection连接,也就是只能对接一个库

@DSTransactional 是 mybatis-plus 中的注解。

  • DSTranactional是事务处理的注解 这个注解 修饰的方法里面 是有多个数据源,但是在使用之前,你得在你不同数据源的mapper文件上面去用@DS注解修饰,要告诉事务框架,处理事务的时候都有哪些数据源

  • @DS相当于是一个标记 把数据源标记出来 然后 @DSTransactional是具体执行事务时候的标识

  • 所以多数据源事务要二者搭配着用

posted @ 2024-02-20 16:46  一只快乐的柠檬精J  阅读(58)  评论(0编辑  收藏  举报
复制代码