From 530b0fa7f9cbebdc249cc8d834a5befb2ebcddf4 Mon Sep 17 00:00:00 2001 From: ajaxfan <909938737@qq.com> Date: Sun, 7 Feb 2021 15:20:08 +0800 Subject: [PATCH] debug --- .../config/DataSourceConfiguration.java | 47 +++++++++++++++++++ src/main/resources/application-dev.yml | 34 +++----------- 2 files changed, 53 insertions(+), 28 deletions(-) create mode 100644 src/main/java/com/chinaunicom/mall/ebtp/project/config/DataSourceConfiguration.java diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/config/DataSourceConfiguration.java b/src/main/java/com/chinaunicom/mall/ebtp/project/config/DataSourceConfiguration.java new file mode 100644 index 0000000..907388e --- /dev/null +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/config/DataSourceConfiguration.java @@ -0,0 +1,47 @@ +package com.chinaunicom.mall.ebtp.project.config; + +import javax.sql.DataSource; + +import org.apache.ibatis.session.SqlSessionFactory; +import org.mybatis.spring.SqlSessionFactoryBean; +import org.mybatis.spring.transaction.SpringManagedTransactionFactory; +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.pool.DruidDataSource; + +import io.seata.rm.datasource.DataSourceProxy; + +/** + * 数据源代理 + * + * @author wangzhongxiang + */ +@Configuration +public class DataSourceConfiguration { + + @Bean + @ConfigurationProperties(prefix = "spring.datasource") + public DataSource druidDataSource() { + DruidDataSource druidDataSource = new DruidDataSource(); + return druidDataSource; + } + + @Primary + @Bean("dataSource") + public DataSourceProxy dataSource(DataSource druidDataSource) { + return new DataSourceProxy(druidDataSource); + } + + @Bean + public SqlSessionFactory sqlSessionFactory(DataSourceProxy dataSourceProxy) throws Exception { + SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); + sqlSessionFactoryBean.setDataSource(dataSourceProxy); + sqlSessionFactoryBean.setTransactionFactory(new SpringManagedTransactionFactory()); + + return sqlSessionFactoryBean.getObject(); + } + +} diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 5fec330..e2ac44b 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -24,34 +24,12 @@ spring: application: name: biz-service-ebtp-project - shardingsphere: - datasource: - names: ds0 - ds0: - type: com.alibaba.druid.pool.DruidDataSource - driver-class-name: com.mysql.cj.jdbc.Driver - username: root - password: root - jdbc-url: jdbc:mysql://10.242.31.158:3033/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true - url: jdbc:mysql://10.242.31.158:3033/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true - filters: stat,wall,log4j - maxActive: 20 - initialSize: 1 - maxWait: 60000 - minIdle: 1 - timeBetweenEvictionRunsMillis: 60000 - minEvictableIdleTimeMillis: 300000 - validationQuery: select 'x' - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - poolPreparedStatements: true - maxOpenPreparedStatements: 20 - connection-properties: druid.stat.merggSql=ture;druid.stat.slowSqlMillis=5000 - props: - sql: - show: true - + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://10.242.31.158:3033/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true + password: root + username: root + jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8