在Spring Boot中扩展Mongo默认配置

时间:2020-02-11 14:22:27

标签: java spring-boot spring-data spring-mongodb spring-mongo

我想扩展有关UuidRepresentation STANDARD的数据库mongo配置。 我还希望默认使用* .yml文件中的所有可能的'spring.data.mongodb。* ...'属性。 我确实尝试过这种方式:

@Configuration
public class MongoConfig {

    @Bean
    public MongoClient mongo() {

        MongoClientOptions.Builder builder = MongoClientOptions.builder();
        CodecRegistry codecRegistry = fromRegistries(fromCodecs(new UuidCodec(UuidRepresentation.STANDARD)),
                MongoClient.getDefaultCodecRegistry());

        builder.codecRegistry(codecRegistry);
        MongoClientOptions options = builder.build();
        return new MongoClient(new ServerAddress(), options);
    }
}

Uuid表示已成功更改,但是创建了新的MongoClient bean,而没有 .yml 文件中的实现值,例如uri。我可以通过将所需的属性映射到新的MongoClient来使用它,但是当任何人要使用“ spring.data.mongodb。* ...”中的其他默认属性时,也必须记住将此值映射到新的Bean。

仅更改UuidRepresentation即可更改默认的MongoClient配置,而无需创建新的MongoClien Bean吗?

我在Java 8中使用SpringBoot 2.1.3。

0 个答案:

没有答案
相关问题