Druid是阿里开发的数据库连接池,功能强大,号称Java语言中最好的数据库连接池。本文主要介绍Srping Boot下用Druid配置多个数据源,demo环境为:Spring Boot 2.1.4.RELEASE、Druid 1.1.16。

1、引入依赖

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.16</version>
</dependency>

2、配置数据源

在application.yml中配置druid数据源

spring:
datasource:
druid:
db1:
driverClassName: oracle.jdbc.OracleDriver
url: jdbc:oracle:thin:@10.39.196.10:1521:test
username: user1
password: user1
initialSize: 2
minIdle: 2
maxActive: 5
validationQuery: SELECT 1 from dual
testWhileIdle: true
testOnBorrow: true
testOnReturn: false
maxWait: 6000
filters: wall,stat,slf4j
db2:
driverClassName: oracle.jdbc.OracleDriver
url: jdbc:oracle:thin:@10.39.196.10:1521:test
username: user2
password: user2
initialSize: 2
minIdle: 2
maxActive: 5
validationQuery: SELECT 1 from dual
testWhileIdle: true
testOnBorrow: true
testOnReturn: false
maxWait: 6000

3、配置类

package com.inspur.webframe.config;

import javax.sql.DataSource;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary; import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder; @Configuration
public class DataSourceConfig { @Primary
@Bean(name = "dataSource1")
@ConfigurationProperties(prefix="spring.datasource.druid.db1")
public DataSource dataSourceCmuser() {
return DruidDataSourceBuilder.create().build();
} @Bean(name = "dataSource2")
@ConfigurationProperties(prefix="spring.datasource.druid.db2")
public DataSource dataSourceIrms() {
return DruidDataSourceBuilder.create().build();
}
}

4、使用

使用@Autowired或@Qualifier引用数据源

@Autowired
private DataSource dataSource;//默认引用dataSource1

@Autowired
@Qualifier("dataSource2")
private DataSource dataSource;//引用dataSource2

Spring Boot整合Druid配置多数据源的更多相关文章

  1. Spring Boot 整合 Druid && 配置数据源监控

    1. 导入 Druid 包 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid& ...

  2. Spring Boot 整合 Druid

    Spring Boot 整合 Druid 概述 Druid 是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池.插件框架和 SQL 解析器组成.该项目主要是为了扩展 JDBC 的一些限制,可以让程 ...

  3. spring boot + mybatis + druid配置实践

    最近开始搭建spring boot工程,将自身实践分享出来,本文将讲述spring boot + mybatis + druid的配置方案. pom.xml需要引入mybatis 启动依赖: < ...

  4. spring boot 2.x 系列 —— spring boot 整合 druid+mybatis

    源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 一.说明 1.1 项目结构 项目查询用的表对应的建表语句放置在resour ...

  5. spring boot:用dynamic-datasource-spring-boot-starter配置多数据源访问seata(seata 1.3.0 / spring boot 2.3.3)

    一,dynamic-datasource-spring-boot-starter的优势? 1,dynamic-datasource-spring-boot-starter 是一个基于springboo ...

  6. Spring Boot + MyBatis + Pagehelper 配置多数据源

    前言: 本文为springboot结合mybatis配置多数据源,在项目当中很多情况是使用主从数据源来读写分离,还有就是操作多库,本文介绍如何一个项目同时使用2个数据源. 也希望大家带着思考去学习!博 ...

  7. Spring Boot通过Configuration配置多数据源

    本文结合SpringBoot + MyBatis + MySql进行多数据源配置,DataSource信息采用自定义dataSource.properties进行配置. 1.文件结构如下: 2.1 p ...

  8. spring boot 2.0 配置双数据源 MySQL 和 SqlServer

    参考:https://www.cnblogs.com/xiaofengfeng/p/9552816.html 安装 org.mybatis.spring.boot:mybatis-spring-boo ...

  9. Spring Boot 整合mybatis 使用多数据源

    本人想要实现一个项目里面多个数据库源连接,所以就尝试写一个demo,不多说,先贴结构,再贴代码,可以根据以下的顺序,直接copy解决问题. 首先,dao和resource下的mappers可以用myb ...

随机推荐

  1. js Map的使用

    setExpenseAndAmountSum: function() { var detailList = vehicleVueObj.vehicleData; var expenseAmountSu ...

  2. 理解Spring定时任务@Scheduled的两个属性fixedRate和fixedDelay

    fixedRate和fixedDelay都是表示任务执行的间隔时间 fixedRate和fixedDelay的区别:fixedDelay非常好理解,它的间隔时间是根据上次的任务结束的时候开始计时的.比 ...

  3. Sketch2Code - Transform sketches into HTML using AI

    Sketch2Code - Transform sketches into HTML using AI https://sketch2code.azurewebsites.net/generated- ...

  4. 946. Validate Stack Sequences

    946. Validate Stack Sequences class Solution { public: bool validateStackSequences(vector<int> ...

  5. odoo开发笔记 -- 单台物理服务器上,利用docker部署多套odoo应用

    部署结构: 待更新! ----服务器硬件配置: 操作系统:ubuntu16.04-64bit CPU/内存:4核8G 1. 基础环境安装 nginx离线安装: docker环境安装: 2. 官方容器镜 ...

  6. 解决window的bat脚本执行出现中文乱码的问题

    window下通过新建txt文件然后改成.bat的文件,输入内容后,执行出现中文乱码?原因: 批处理文件,是以ANSI编码方式.若以别的方式(如UTF-8)编辑了批处理,转换成ANSI格式即可,正常创 ...

  7. PyEchart--数据分析师的利器

    Echart https://echarts.baidu.com/ ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(I ...

  8. Java中遍历ConcurrentHashMap的四种方式

    //方式一:在for-each循环中使用entries来遍历 System.out.println("方式一:在for-each循环中使用entries来遍历"); for(Map ...

  9. Doker容器部署Tomcat服务器

    1.拉取tomcat服务镜像文件 root@ubuntu:~# docker pull registry.cn-hangzhou.aliyuncs.com/xxxx/xxxxx:web web: Pu ...

  10. 仿简书MarkDown编辑器可同步滚动

    模仿简书的MarkDown编辑器,使用Angular8写的示例 1.支持同步滚动 编辑的过程中,右侧预览界面会同步滚动.滚动右侧预览界面,左侧编辑区也会同步滚动哦 2.支持语法高亮 如下: using ...