Saltar al contenido

Cómo deshabilitar la configuración automática de spring-data-mongodb en spring-boot

Solución:

Así es como lo hago:

@SpringBootApplication(exclude = {
  MongoAutoConfiguration.class, 
  MongoDataAutoConfiguration.class
})

o como sugirió Dan Oak:

spring.autoconfigure.exclude= 
  org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration,
  org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration

Como señaló Andy Wilkinson en los comentarios, cuando use EnableAutoConfiguration con lista de exclusión, asegúrese de que no haya otras clases anotadas con EnableAutoConfiguration o SpringBootApplication.

Mi caso de uso fue ligeramente diferente. Tenía un requisito para 2 bases de datos diferentes en el mismo proyecto. Extendí las clases de configuración automática y agregué una anotación de perfil.

@Profile("mongo")
@Configuration
public class CustomMongoAutoConfiguration extends MongoAutoConfiguration {

    public CustomMongoAutoConfiguration(
        MongoProperties properties,
        ObjectProvider<MongoClientOptions> options,
        Environment environment) {
        super(properties,options,environment);
    }
}

Y

@Profile("mongo")
@Configuration
@EnableConfigurationProperties(MongoProperties.class)
public class CustomMongoDataAutoConfiguration extends MongoDataAutoConfiguration {

    public CustomMongoDataAutoConfiguration(
        ApplicationContext applicationContext,
        MongoProperties properties) {
        super(applicationContext,properties);
    }

}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *