.JdbcTemplate uma classe de configuração modelo
// // O código-fonte recriado a partir de um arquivo .class pelo IntelliJ IDEA // (alimentado por Fernflower decompiler) // pacote org.springframework.boot.autoconfigure.jdbc; importação javax.sql.DataSource; importação org.springframework.boot.autoconfigure.AutoConfigureAfter; importação org.springframework.boot.autoconfigure.condition.ConditionalOnClass; importação org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; importação org.springframework.boot.autoconfigure.condition.ConditionalOnSingleCandidate; importação org.springframework.context.annotation.Bean; importarorg.springframework.context.annotation.Configuration; importação org.springframework.context.annotation.Primary; importação org.springframework.jdbc.core.JdbcOperations; importação org.springframework.jdbc.core.JdbcTemplate; importação org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations; importação org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; @Configuration @ConditionalOnClass ({fonte de dados. Classe , JdbcTemplate. Classe }) @ConditionalOnSingleCandidate (fonte de dados. Classe ) @AutoConfigureAfter ({DataSourceAutoConfiguration. Classe }) público classe JdbcTemplateAutoConfiguration { private final de DataSource dataSource; pública JdbcTemplateAutoConfiguration (DataSource dataSource) { este .dataSource = dataSource; } @Bean @Primary @ConditionalOnMissingBean ({JdbcOperations. Class }) público JdbcTemplate JdbcTemplate () { return new JdbcTemplate ( este .dataSource); } @Bean @Primary @ConditionalOnMissingBean ({NamedParameterJdbcOperations. Class }) pública NamedParameterJdbcTemplate namedParameterJdbcTemplate () { retornar novo NamedParameterJdbcTemplate ( este .dataSource); } }
II. Criar uma fonte de dados, configuração de fonte de dados
empacotar com.sie.watsons.base.sync.model.dao; importação org.apache.commons.dbcp.BasicDataSource; importação org.apache.commons.lang.StringUtils; importação org.springframework.beans.factory.annotation.Qualifier; importação org.springframework.beans.factory.annotation.Value; importação org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder; importação org.springframework.boot.context.properties.ConfigurationProperties; importação org.springframework.context.annotation.Bean; importação org.springframework.context.annotation.Configuration; importação org.springframework.context.annotation.Primary; importarorg.springframework.jdbc.core.JdbcTemplate; importação org.springframework.stereotype.Component; importação javax.annotation.PostConstruct; importação javax.sql.DataSource; @Configuration pública classe RmsDataSource { // 配置第一个数据源 @Bean (name = "primaryDataSource" ) @Qualifier ( "primaryDataSource" ) @ConfigurationProperties (prefixo = "spring.datasource.primary" ) pública DataSource primaryDataSource () { return DataSourceBuilder.create () construção ().; } @Bean (nome = "primaryJdbcTemplate") Público JdbcTemplate primaryJdbcTemplate (@Qualifier ( "primaryDataSource" ) DataSource dataSource) { retornar novo JdbcTemplate (dataSource); } // 配置第二个数据源 @Bean (name = "secondaryDataSource" ) @Qualifier ( "secondaryDataSource" ) @Primary @ConfigurationProperties (prefixo = "spring.datasource.secondary" ) pública DataSource secondaryDataSource () { return DataSourceBuilder.create ().Construir(); } @Bean (nome = "secondaryJdbcTemplate" ) públicoJdbcTemplate secondaryJdbcTemplate (@Qualifier ( "secondaryDataSource" ) DataSource dataSource) { retornar novo JdbcTemplate (dataSource); } }