快盘下载:好资源、好软件、快快下载吧!

快盘排行|快盘最新

当前位置:首页软件教程电脑软件教程 → SpringBoot-SpringCloud-配置多数据源切换

SpringBoot-SpringCloud-配置多数据源切换

时间:2022-10-13 13:44:48人气:作者:快盘下载我要评论

在需要的项目内引入 dynamic-datasource-spring-boot-starter 多数据源 依赖

<!--mybatis-->
		<dependency>
			<groupId>com.baomidou</groupId>
			<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
			<version>${dynamic-ds.version}</version>
		</dependency>

在配置文件中配置主从数据源

# 数据源
spring:
  datasource:
    dynamic:
      primary: master #设置默认数据库
      strict: false
      datasource:
        master:#主数据库
        url: jdbc:mysql://数据库ip:数据库端口/数据库名称?characterEncoding=utf8
        username: #####
        password: ######
        driver-class-name: com.mysql.cj.jdbc.Driver
        slave_1:#从数据库
          url: jdbc:mysql://数据库ip:数据库端口/数据库名称?characterEncoding=utf8
          username: #####
          password: #######
          driver-class-name: com.mysql.cj.jdbc.Driver

使用 ;DS 切换数据源。
;DS 可以注解在方法上或类上;同时存在就近原则 方法上注解 优先于 类上注解。

;DS(;配置的数据源名称;)
;Service
;DS(;slave;)
public class UserServiceImpl implements UserService {

  ;Autowired
  private JdbcTemplate jdbcTemplate;

  public List selectAll() {
    return  jdbcTemplate.queryForList(;select * from user;);
  }
  
  ;Override
  ;DS(;slave_1;)
  public List selectByCondition() {
    return  jdbcTemplate.queryForList(;select * from user where age >10;);
  }
}

同一个方法调用了多个数据源 事务会失效 因为事务是根据数据库事务为基础实现的 所以同一个方法内涉及多个数据库时会导致事务失效

仅作为学习记录使用

相关文章

网友评论

快盘下载暂未开通留言功能。

关于我们| 广告联络| 联系我们| 网站帮助| 免责声明| 软件发布

Copyright 2019-2029 【快快下载吧】 版权所有 快快下载吧 | 豫ICP备10006759号公安备案:41010502004165

声明: 快快下载吧上的所有软件和资料来源于互联网,仅供学习和研究使用,请测试后自行销毁,如有侵犯你版权的,请来信指出,本站将立即改正。