spring-boot入门(六)多数据源

spring-boot入门(六)多数据源

我们现在可以通过自定义的数据源,用spring boot迅速的搭建起一个访问数据库的应用,有时候一个系统往往会和多个数据库进行交互。当然可以通过远程服务调用方式访问多个数据库,每个服务负责不同的数据库访问,但是多数据源的方式可能会更加的快捷和高效,这依赖于系统的架构设计。

1. 多数据源的配置

与单数据源配置大致相同,需要引入各种spring boot和jdbc驱动,以及数据库连接池等等。以spring-boot入门(五)自定义数据源:druid为基础在此之上继续添加其它数据源。

1.1 配置application.yml文件

在application.yml文件中配置数据库的连接信息

boc:
  datasource:
    url: jdbc:mysql://localhost:3306/db1?useSSL=false&requireSSL=false
    driver-class-name: com.mysql.jdbc.Driver
    username: root
    password: root

ccb:
  datasource:
    url: jdbc:mysql://localhost:3306/db2?useSSL=false&requireSSL=false
    driver-class-name: com.mysql.jdbc.Driver
    username: root
    password: root

druid:
  filters: stat, wall
  maxActive: 20
  initialSize: 1
  maxWait: 60000
  minIdle: 10
  timeBetweenEvictionRunsMillis: 60000
  minEvictableIdleTimeMillis: 300000
  validationQuery: SELECT 1
  testWhileIdle: true
  testOnBorrow: false
  testOnReturn: false
  removeAbandoned: true
  removeAbandonedTimeout: 1800
  logAbandoned: false

上面配置了两个数据源,boc和ccb分别是db1和db2,连接池使用的是阿里的druid。

1.2 初始化配置

初始化配置,首先定义一个DruidDataSourceProperties此类用于封装druid的配置属性。可以通过@ConfigurationProperties注解方便快速的注入上面定义的druid连接池。

import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

/**
 * @author JasonLin
 * @version V1.0
 * @date 2017/12/4
 */
@Getter
@Setter
@Configuration
@ConfigurationProperties(prefix = "druid")
public class DruidDataSourceProperties {
   
    private String filters;
    private int maxActive;
    private int initialSize;
    private int maxWait;
    private int minIdle;
    private long timeBetweenEvictionRunsMillis;
    
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值