You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
2.1 KiB
51 lines
2.1 KiB
package com.stone.conf.datasource.intermediate;
|
|
|
|
import org.apache.ibatis.session.SqlSessionFactory;
|
|
import org.mybatis.spring.SqlSessionFactoryBean;
|
|
import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties;
|
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.Configuration;
|
|
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
|
|
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
|
import tk.mybatis.spring.annotation.MapperScan;
|
|
|
|
import javax.sql.DataSource;
|
|
|
|
/**
|
|
* @author zichen
|
|
*/
|
|
@Configuration
|
|
@MapperScan(basePackages = "com.stone.mapper.intermediate", sqlSessionFactoryRef = "SessionTemplateIntermediate")
|
|
public class DruidIntermediate {
|
|
|
|
@Bean
|
|
@ConfigurationProperties(prefix = "spring.datasource.intermediate")
|
|
public DataSourceProperties DataSourcePropertiesIntermediate(){
|
|
return new DataSourceProperties();
|
|
}
|
|
|
|
@Bean
|
|
@ConfigurationProperties(prefix = "spring.datasource.intermediate")
|
|
public DataSource DataSourceIntermediates() {
|
|
return DataSourcePropertiesIntermediate().initializeDataSourceBuilder().build();
|
|
// return DataSourceBuilder.create().build();
|
|
}
|
|
|
|
@Bean
|
|
public DataSourceTransactionManager TransactionManagerIntermediate() {
|
|
DataSourceTransactionManager dataSourceTransactionManager = new DataSourceTransactionManager();
|
|
dataSourceTransactionManager.setDataSource(DataSourceIntermediates());
|
|
return dataSourceTransactionManager;
|
|
}
|
|
|
|
@Bean(name = "SessionTemplateIntermediate")
|
|
public SqlSessionFactory SqlSessionFactoryIntermediate() throws Exception {
|
|
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
|
|
sessionFactory.setDataSource(DataSourceIntermediates());
|
|
sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver()
|
|
.getResources( "classpath*:mapper/intermediate/*.xml"));
|
|
return sessionFactory.getObject();
|
|
}
|
|
|
|
}
|
|
|