.JdbcTemplate une classe de configuration de modèle
// // Code source recréé à partir d' un fichier .class par IntelliJ IDEA // (propulsé par Fernflower decompiler) // paquet org.springframework.boot.autoconfigure.jdbc; importation javax.sql.DataSource; importation org.springframework.boot.autoconfigure.AutoConfigureAfter; importation org.springframework.boot.autoconfigure.condition.ConditionalOnClass; importation org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; importation org.springframework.boot.autoconfigure.condition.ConditionalOnSingleCandidate; importation org.springframework.context.annotation.Bean; importationorg.springframework.context.annotation.Configuration; importation org.springframework.context.annotation.Primary; importation org.springframework.jdbc.core.JdbcOperations; importation org.springframework.jdbc.core.JdbcTemplate; importation org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations; importation org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; @Configuration @ConditionalOnClass ({DataSource. Classe , JdbcTemplate. Class }) @ConditionalOnSingleCandidate (DataSource. Classe ) @AutoConfigureAfter ({DataSourceAutoConfiguration. Class }) publique classe JdbcTemplateAutoConfiguration { privée finale DataSource dataSource; publique JdbcTemplateAutoConfiguration (DataSource dataSource) { ce .DataSource = dataSource; } @Bean @Primary @ConditionalOnMissingBean ({JdbcOperations. Class }) publique JdbcTemplate JdbcTemplate () { retour nouveau JdbcTemplate ( ce .DataSource); } @Bean @Primary @ConditionalOnMissingBean ({NamedParameterJdbcOperations. Class }) publique NamedParameterJdbcTemplate namedParameterJdbcTemplate () { retour nouvelle NamedParameterJdbcTemplate ( ce .DataSource); } }
II. Créer une source de données, la configuration de source de données
emballer com.sie.watsons.base.sync.model.dao; importation org.apache.commons.dbcp.BasicDataSource; importation org.apache.commons.lang.StringUtils; importation org.springframework.beans.factory.annotation.Qualifier; importation org.springframework.beans.factory.annotation.Value; importation org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder; importation org.springframework.boot.context.properties.ConfigurationProperties; importation org.springframework.context.annotation.Bean; importation org.springframework.context.annotation.Configuration; importation org.springframework.context.annotation.Primary; importationorg.springframework.jdbc.core.JdbcTemplate; importation org.springframework.stereotype.Component; importation javax.annotation.PostConstruct; importation javax.sql.DataSource; @Configuration publique classe RmsDataSource { // 配置第一个数据源 @Bean (name = "primaryDataSource" ) @Qualifier ( "primaryDataSource" ) @ConfigurationProperties (préfixe = "spring.datasource.primary" ) publique DataSource primaryDataSource () { retour DataSourceBuilder.create () build (). } @Bean (nom = "primaryJdbcTemplate") Publique JdbcTemplate primaryJdbcTemplate (@Qualifier ( "primaryDataSource" ) DataSource dataSource) { retour nouvelle JdbcTemplate (dataSource); } // 配置第二个数据源 @Bean (name = "secondaryDataSource" ) @Qualifier ( "secondaryDataSource" ) @Primary @ConfigurationProperties (préfixe = "spring.datasource.secondary" ) publique DataSource secondaryDataSource () { retour DataSourceBuilder.create ().construire(); } @Bean (nom = "secondaryJdbcTemplate" ) publiqueJdbcTemplate secondaryJdbcTemplate (@Qualifier ( "secondaryDataSource" ) DataSource dataSource) { retour nouvelle JdbcTemplate (dataSource); } }