|
@@ -1,12 +1,9 @@
|
|
|
package com.keao.edu.datasource;
|
|
|
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.Map;
|
|
|
-
|
|
|
-import javax.sql.DataSource;
|
|
|
-
|
|
|
+import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder;
|
|
|
import org.mybatis.spring.SqlSessionFactoryBean;
|
|
|
import org.mybatis.spring.annotation.MapperScan;
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
|
|
import org.springframework.context.annotation.Bean;
|
|
|
import org.springframework.context.annotation.Configuration;
|
|
@@ -16,13 +13,20 @@ import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
|
|
import org.springframework.transaction.PlatformTransactionManager;
|
|
|
import org.springframework.transaction.annotation.EnableTransactionManagement;
|
|
|
|
|
|
-import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder;
|
|
|
+import javax.sql.DataSource;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
@EnableTransactionManagement
|
|
|
@Configuration
|
|
|
-@MapperScan("com.keao.edu.*.dao")
|
|
|
+@MapperScan("com.keao.edu.datasource.dao")
|
|
|
public class DataSourceConfig {
|
|
|
|
|
|
+ @Value("${mybatis.mapperLocations}")
|
|
|
+ private String resourcePath;
|
|
|
+ @Value("${mybatis.typeAliasesPackage}")
|
|
|
+ private String typeAliasesPackage;
|
|
|
+
|
|
|
@Bean("master")
|
|
|
@Primary
|
|
|
@ConfigurationProperties(prefix = "spring.datasource") // application.yml中对应属性的前缀
|
|
@@ -45,8 +49,8 @@ public class DataSourceConfig {
|
|
|
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
|
|
|
// 配置动态数据源,如果没有将 dynamicDataSource 作为数据源则不能实现切换
|
|
|
sqlSessionFactoryBean.setDataSource(dynamicDataSource());
|
|
|
- sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:config/mybatis/*.xml"));
|
|
|
- sqlSessionFactoryBean.setTypeAliasesPackage("com.keao.edu.*.entity");
|
|
|
+ sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(resourcePath));
|
|
|
+ sqlSessionFactoryBean.setTypeAliasesPackage(typeAliasesPackage);
|
|
|
|
|
|
return sqlSessionFactoryBean;
|
|
|
}
|