Spring Boot整合Druid配置多数据源
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配置多数据源的更多相关文章
- Spring Boot 整合 Druid && 配置数据源监控
1. 导入 Druid 包 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid& ...
- Spring Boot 整合 Druid
Spring Boot 整合 Druid 概述 Druid 是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池.插件框架和 SQL 解析器组成.该项目主要是为了扩展 JDBC 的一些限制,可以让程 ...
- spring boot + mybatis + druid配置实践
最近开始搭建spring boot工程,将自身实践分享出来,本文将讲述spring boot + mybatis + druid的配置方案. pom.xml需要引入mybatis 启动依赖: < ...
- spring boot 2.x 系列 —— spring boot 整合 druid+mybatis
源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 一.说明 1.1 项目结构 项目查询用的表对应的建表语句放置在resour ...
- 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 ...
- Spring Boot + MyBatis + Pagehelper 配置多数据源
前言: 本文为springboot结合mybatis配置多数据源,在项目当中很多情况是使用主从数据源来读写分离,还有就是操作多库,本文介绍如何一个项目同时使用2个数据源. 也希望大家带着思考去学习!博 ...
- Spring Boot通过Configuration配置多数据源
本文结合SpringBoot + MyBatis + MySql进行多数据源配置,DataSource信息采用自定义dataSource.properties进行配置. 1.文件结构如下: 2.1 p ...
- spring boot 2.0 配置双数据源 MySQL 和 SqlServer
参考:https://www.cnblogs.com/xiaofengfeng/p/9552816.html 安装 org.mybatis.spring.boot:mybatis-spring-boo ...
- Spring Boot 整合mybatis 使用多数据源
本人想要实现一个项目里面多个数据库源连接,所以就尝试写一个demo,不多说,先贴结构,再贴代码,可以根据以下的顺序,直接copy解决问题. 首先,dao和resource下的mappers可以用myb ...
随机推荐
- 为什么需要cookie和session
为什么需要cookie和session 在Web发展史中,我们知道浏览器与服务器间采用的是 http协议,而这种协议是无状态的,所以这就导致了服务器无法知道是谁在浏览网页,但很明显,一些网页需要知 ...
- Redis中删除过期Key的三种策略
转载自:http://blog.csdn.net/a_bang/article/details/52986935?locationNum=9&fps=1 项目中有个接口要频繁调用查询数据库中的 ...
- SpringBoot(十八):SpringBoot2.1.1引入SwaggerUI工具
Swagger是一个有用web界面的提供实体模型结构展示,接口展示,调测等的一个工具,使用它可以提高开发者开发效率,特别是前后端配合开发时,大大省去了沟通接口耗费的时间:服务端开发完接口发布后,UI端 ...
- Re3 : Real-Time Recurrent Regression Networks for Visual Tracking of Generic Objects
Re3 : Real-Time Recurrent Regression Networks for Visual Tracking of Generic Objects 2019-10-04 14:4 ...
- 提升开发幸福感的10条JS技巧
鱼头总结一些能够提高开发效率的JS技巧,这些技巧很实用,觉得挺好,想推荐给大家,所以有了这篇文章. 生成随机UID const genUid = () => { var length = 20 ...
- 如何设置github的ssh key
目录 Generate SSH key in putty add key to github git setting How to add SSH key to github Generate SSH ...
- Java类成员初始化顺序
类中包含7中成员:1.静态变量 static2.final静态常量 final static3.静态代码块 static{} //多个代码块顺序执行 4.普通变量5.普通代码块 {} //多个代码 ...
- python开源项目聚合推荐【1】
******************************************************* 01项目名:unimatrix 功能介绍:Python模拟“黑客帝国”影片中的终端动画脚 ...
- Vue ElementUI主页面搭建和导航栏使用,并在刷新页面的时候选中状态消失的问题解决
<template> <div style="height:100%;width: 100%; padding:0 auto; margin: 0 auto;"& ...
- djang-celery使用带密码的redis
前言: 网上很多django-celery使用redis(使用不带密码的redis)的用法都是千篇一律,那带密码的redis该怎么使用了呢,没有看到一篇有帮助的,在官网搜了下,发现以下用法,请看下面 ...