Comment désactiver la classe de balayage @Configuration au démarrage du printemps

SDans soleil san:

J'ai deux applications Spring démarrage qui dépendent du même commonmodule. Dans le commonmodule, j'ai deux configuration classespour deux différents DB. Dans la première application, je dois avoir une connexion sur le 2 DB , mais dans la seconde application n'est pas nécessaire d'avoir une connexion sur 2 DB et je veux avoir une connexion uniquement sur le premier DB.

La deuxième application par défaut balayant tout le commonmodule et Configurationpour deux DB. Je veux désactiver le contrôle sur la seconde Configuration. Comment puis je faire ça?

Ceci est mon deuxième application:

    @SpringBootApplication(scanBasePackages = { "com" })
    @EnableScheduling
    public class secondApplication {
        public static void main(String[] args) {
            SpringApplication.run(secondApplication.class, args);
        }
    }

Première configuration:

    @Configuration
    @EnableTransactionManagement
    @EnableJpaRepositories(
            entityManagerFactoryRef = "postgresqlEntityManagers", 
            transactionManagerRef = "postgresqlTransactionManager", 
            basePackages = "com.db1")
    public class firstConfiguration {

Deuxième configuration:

        @Configuration
        @EnableTransactionManagement
        @EnableJpaRepositories(
                entityManagerFactoryRef = "postgresqlEntityManagers", 
                transactionManagerRef = "postgresqlTransactionManager", 
                basePackages = "com.db2")
        public class secondConfiguration {
Jonathan JOhx:

En fonction de votre code, vous ajoutez un @ComponnentScanet l' utilisation excludeFilterspour exclure toutes les classes que vous voulez et aussi excluez des sources de données de configuration automatique en utilisant ce @EnableAutoConfigurationqui a exclure le terrain. en suivant ces configurations, vous devriez avoir un exemple comme ceci:

@ComponentScan(basePackages = "com.example.project",
         excludeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE,
                classes = {AnyCustomConnectionProvider.class, AnyCustomJpaConfiguration.class}))
@EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class,
                                    DataSourceTransactionManagerAutoConfiguration.class,
                                    HibernateJpaAutoConfiguration.class})

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=364352&siteId=1
conseillé
Classement