Commit e6a0654f by stylefeng

更改多数据源配置

parent ac5315d9
......@@ -47,18 +47,18 @@ spring:
spring:
profiles: dev
#多数据源情况的配置,注意第一个数据源是guns.datasource
guns:
datasource:
url: jdbc:mysql://127.0.0.1:3306/guns?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=UTC
username: root
password: root
db-name: guns #用来搜集数据库的所有表
filters: wall,mergeStat
#多数据源情况的配置
guns:
muti-datasource:
open: false
url: jdbc:mysql://127.0.0.1:3306/guns2?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=UTC
url: jdbc:mysql://127.0.0.1:3306/guns?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=UTC
username: root
password: root
dataSourceNames:
......
package com.stylefeng.guns.core.config;
import com.stylefeng.guns.core.config.properties.DruidProperties;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
......@@ -13,4 +16,10 @@ import org.springframework.context.annotation.PropertySource;
@PropertySource("classpath:/default-config.properties")
public class DefaultProperties {
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DruidProperties druidProperties() {
return new DruidProperties();
}
}
......@@ -13,6 +13,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import java.sql.SQLException;
......@@ -33,12 +34,6 @@ import java.util.HashMap;
public class MultiDataSourceConfig {
@Bean
@ConfigurationProperties(prefix = "guns.datasource")
public DruidProperties druidProperties() {
return new DruidProperties();
}
@Bean
@ConfigurationProperties(prefix = "guns.muti-datasource")
public MutiDataSourceProperties mutiDataSourceProperties() {
return new MutiDataSourceProperties();
......@@ -52,7 +47,7 @@ public class MultiDataSourceConfig {
/**
* guns的数据源
*/
private DruidDataSource dataSourceGuns(DruidProperties druidProperties) {
private DruidDataSource dataSource(DruidProperties druidProperties) {
DruidDataSource dataSource = new DruidDataSource();
druidProperties.config(dataSource);
return dataSource;
......@@ -74,7 +69,7 @@ public class MultiDataSourceConfig {
@Bean
public DynamicDataSource mutiDataSource(DruidProperties druidProperties, MutiDataSourceProperties mutiDataSourceProperties) {
DruidDataSource dataSourceGuns = dataSourceGuns(druidProperties);
DruidDataSource dataSourceGuns = dataSource(druidProperties);
DruidDataSource bizDataSource = bizDataSource(druidProperties, mutiDataSourceProperties);
try {
......@@ -116,4 +111,15 @@ public class MultiDataSourceConfig {
public OptimisticLockerInterceptor optimisticLockerInterceptor() {
return new OptimisticLockerInterceptor();
}
/**
* 事务配置
*
* @author stylefeng
* @Date 2018/6/27 23:11
*/
@Bean
public DataSourceTransactionManager dataSourceTransactionManager(DynamicDataSource mutiDataSource) {
return new DataSourceTransactionManager(mutiDataSource);
}
}
......@@ -7,7 +7,6 @@ import com.stylefeng.guns.core.config.properties.DruidProperties;
import com.stylefeng.guns.core.datascope.DataScopeInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
......@@ -24,17 +23,11 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
@MapperScan(basePackages = {"com.stylefeng.guns.modular.*.dao"})
public class SingleDataSourceConfig {
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DruidProperties druidProperties() {
return new DruidProperties();
}
/**
* 单数据源连接池配置
*/
@Bean
public DruidDataSource singleDatasource(DruidProperties druidProperties) {
public DruidDataSource dataSource(DruidProperties druidProperties) {
DruidDataSource dataSource = new DruidDataSource();
druidProperties.config(dataSource);
return dataSource;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment