spring-boot使用两个数据库mysql 和 sqlserver
2018-01-17 19:23
465 查看
首先是properties配置
当然mysql 和 sqlserver的jar包要加上。
#mysql
spring.datasource.primary.url=jdbc:mysql://localhost:3306/db_company?useUnicode=true&characterEncoding=utf-8
spring.datasource.primary.username = root
spring.datasource.primary.password = 123456
spring.datasource.primary.driverClassName = com.mysql.jdbc.Driver
spring.datasource.primary.max-active=20
spring.datasource.primary.max-idle=8
spring.datasource.primary.max-maxWait=100
spring.datasource.primary.min-idle=8
spring.datasource.primary.initial-size=10
#sqlserver
spring.datasource.second.url=jdbc:sqlserver://192.168.x.xxx:1433;database=QSTMGood
spring.datasource.second.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.second.username=sa
spring.datasource.second.password=baitu123
spring.datasource.second.initialSize=1
spring.datasource.second.minIdle=1
spring.datasource.second.maxActive=20
spring.datasource.second.maxWait=30000
spring.datasource.second.timeBetweenEvictionRunsMillis=40000
spring.datasource.second.minEvictableIdleTimeMillis=300000
接下来是jdbctemplate的设置
创建一个Config类
import javax.sql.DataSource;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
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 org.springframework.jdbc.core.JdbcTemplate;
/**
* Copyright: Copyright (c) 2018 LanRu-Caifu
*
* @ClassName: DataSourceConfig.java
* @Description: 该类的功能描述
*
* @version: v1.0.0
* @author: coder
* @date: 2018年1月10日 上午10:55:25
*
* Modification History:
* Date Author Version Description
*---------------------------------------------------------*
* 2018年1月10日 coder v1.0.0 修改原因
*/
@Configuration
public class DataSourceConfig
{
@Bean(name = "primaryDataSource")
@Qualifier("primaryDataSource")
@ConfigurationProperties(prefix="spring.datasource.primary")
public DataSource primaryDataSource() {
return DataSourceBuilder.create().build();
}
@Bean(name = "secondaryDataSource")
@Qualifier("secondaryDataSource")
@Primary
@ConfigurationProperties(prefix="spring.datasource.second")
public DataSource secondaryDataSource() {
return DataSourceBuilder.create().build();
}
@Bean(name = "primaryJdbcTemplate")
public JdbcTemplate primaryJdbcTemplate(
@Qualifier("primaryDataSource") DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
@Bean(name = "secondaryJdbcTemplate")
public JdbcTemplate secondaryJdbcTemplate(
@Qualifier("secondaryDataSource") DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
}
接下来是使用:
@Autowired
@Qualifier("primaryJdbcTemplate")
protected JdbcTemplate jdbcTemplate1;
@Autowired
@Qualifier("secondaryJdbcTemplate")
protected JdbcTemplate jdbcTemplate2;
当然mysql 和 sqlserver的jar包要加上。
#mysql
spring.datasource.primary.url=jdbc:mysql://localhost:3306/db_company?useUnicode=true&characterEncoding=utf-8
spring.datasource.primary.username = root
spring.datasource.primary.password = 123456
spring.datasource.primary.driverClassName = com.mysql.jdbc.Driver
spring.datasource.primary.max-active=20
spring.datasource.primary.max-idle=8
spring.datasource.primary.max-maxWait=100
spring.datasource.primary.min-idle=8
spring.datasource.primary.initial-size=10
#sqlserver
spring.datasource.second.url=jdbc:sqlserver://192.168.x.xxx:1433;database=QSTMGood
spring.datasource.second.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.second.username=sa
spring.datasource.second.password=baitu123
spring.datasource.second.initialSize=1
spring.datasource.second.minIdle=1
spring.datasource.second.maxActive=20
spring.datasource.second.maxWait=30000
spring.datasource.second.timeBetweenEvictionRunsMillis=40000
spring.datasource.second.minEvictableIdleTimeMillis=300000
接下来是jdbctemplate的设置
创建一个Config类
import javax.sql.DataSource;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
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 org.springframework.jdbc.core.JdbcTemplate;
/**
* Copyright: Copyright (c) 2018 LanRu-Caifu
*
* @ClassName: DataSourceConfig.java
* @Description: 该类的功能描述
*
* @version: v1.0.0
* @author: coder
* @date: 2018年1月10日 上午10:55:25
*
* Modification History:
* Date Author Version Description
*---------------------------------------------------------*
* 2018年1月10日 coder v1.0.0 修改原因
*/
@Configuration
public class DataSourceConfig
{
@Bean(name = "primaryDataSource")
@Qualifier("primaryDataSource")
@ConfigurationProperties(prefix="spring.datasource.primary")
public DataSource primaryDataSource() {
return DataSourceBuilder.create().build();
}
@Bean(name = "secondaryDataSource")
@Qualifier("secondaryDataSource")
@Primary
@ConfigurationProperties(prefix="spring.datasource.second")
public DataSource secondaryDataSource() {
return DataSourceBuilder.create().build();
}
@Bean(name = "primaryJdbcTemplate")
public JdbcTemplate primaryJdbcTemplate(
@Qualifier("primaryDataSource") DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
@Bean(name = "secondaryJdbcTemplate")
public JdbcTemplate secondaryJdbcTemplate(
@Qualifier("secondaryDataSource") DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
}
接下来是使用:
@Autowired
@Qualifier("primaryJdbcTemplate")
protected JdbcTemplate jdbcTemplate1;
@Autowired
@Qualifier("secondaryJdbcTemplate")
protected JdbcTemplate jdbcTemplate2;
相关文章推荐
- springboot学习笔记--Spring Boot使用数据库(MySQL)
- 【Spring Boot&&Spring Cloud系列】Spring Boot中使用数据库之MySql
- 各种数据库(oracle、mysql、sqlserver等)在Spring中数据源的配置和JDBC驱动包 .
- SpringBoot使用JPA操作数据库
- Spring Boot:在Spring Boot中使用Mysql和JPA
- Spring Boot-使用Spring Data JPA简化数据库访问
- mysql使用federated引擎实现远程访问数据库(跨网络同时操作两个数据库中的表)
- 使用mysql的图形化工具SQLyog的架构同步工具 快速对比两个数据库的架构,并赋值修改架构
- Spring Boot Mysql 数据库操作
- 第一个 Spring Boot 程序 : 使用 spring jdbc 访问关系型数据库
- Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot中使用JdbcTemplate访问数据库
- Spring Security ACL使用MySQL配置与数据库脚本
- Spring配置文件中配置数据库连接(mysql,sqlserver,oracle)
- SpringBoot中连接MYSQL数据库,并使用JPA进行数据库的相关操作
- 在Spring中使用JTA事务管理【两个数据库实现事务控制】
- spring boot 使用h2数据库配置(内存模式)
- Spring Boot中使用Redis数据库
- Spring&Quartz使用数据库集群配置(MySQL/SQLServer/Oracle)
- Spring Boot(3)-使用mysql