29岁的我,毅然决然的从国企辞职了!
https://xueqiu.com/7755398453/153673352
package com.example.multidatasourcedemo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration;
import org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration;
/**
* 多数据源
* 2020-03-19 09:33:54.001 INFO 11276 --- [ main] c.e.m.MultiDataSourceConfig : foo datasource: jdbc:h2:mem:foo
* 2020-03-19 09:33:54.027 INFO 11276 --- [ main] c.e.m.MultiDataSourceConfig : bar datasource: jdbc:h2:mem:bar
* 其它:
* https://blog.csdn.net/zxy_9264_ang/article/details/96829229
*/
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class,
DataSourceTransactionManagerAutoConfiguration.class,
JdbcTemplateAutoConfiguration.class})
public class MultiDatasourceDemoApplication {
public static void main(String[] args) {
SpringApplication.run(MultiDatasourceDemoApplication.class, args);
}
}
package com.example.multidatasourcedemo;
import lombok.extern.slf4j.Slf4j;
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.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.PlatformTransactionManager;
import javax.annotation.Resource;
import javax.sql.DataSource;
@Configuration
@Slf4j
public class MultiDataSourceConfig {
/*datasource-->foo*/
@Bean
@ConfigurationProperties("foo.datasource")
public DataSourceProperties fooDataSourceProperties(){
return new DataSourceProperties();
}
@Bean
public DataSource fooDataSource(){
DataSourceProperties dataSourceProperties = fooDataSourceProperties();
log.info("foo datasource: {}",dataSourceProperties.getUrl());
return dataSourceProperties.initializeDataSourceBuilder().build();
}
@Bean
@Resource
public PlatformTransactionManager fooTxManager(DataSource fooDataSource){
return new DataSourceTransactionManager(fooDataSource);
}
/*datasource-->bar*/
@Bean
@ConfigurationProperties("bar.datasource")
public DataSourceProperties barDataSourceProperties() {
return new DataSourceProperties();
}
@Bean
public DataSource barDataSource() {
DataSourceProperties dataSourceProperties = barDataSourceProperties();
log.info("bar datasource: {}", dataSourceProperties.getUrl());
return dataSourceProperties.initializeDataSourceBuilder().build();
}
@Bean
@Resource
public PlatformTransactionManager barTxManager(DataSource barDataSource) {
return new DataSourceTransactionManager(barDataSource);
}
}
management.endpoints.web.exposure.include=*
spring.output.ansi.enabled=ALWAYS
foo.datasource.url=jdbc:h2:mem:foo
foo.datasource.username=sa
foo.datasource.password=
bar.datasource.url=jdbc:h2:mem:bar
bar.datasource.username=sa
bar.datasource.password=
本文来自博客园,作者:ukyo--碳水化合物,转载请注明原文链接:https://www.cnblogs.com/ukzq/p/13285239.html

浙公网安备 33010602011771号