Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Spring Boot中扩展Mongo默认配置_Java_Spring Boot_Spring Data_Spring Mongodb_Spring Mongo - Fatal编程技术网

Java 在Spring Boot中扩展Mongo默认配置

Java 在Spring Boot中扩展Mongo默认配置,java,spring-boot,spring-data,spring-mongodb,spring-mongo,Java,Spring Boot,Spring Data,Spring Mongodb,Spring Mongo,我想扩展关于UuidRepresentation标准的数据库mongo配置。 我还希望在默认情况下使用*.yml文件中所有可能的“spring.data.mongodb.*…”属性。 我确实这样做过: @Configuration public class MongoConfig { @Bean public MongoClient mongo() { MongoClientOptions.Builder builder = MongoClientOption

我想扩展关于UuidRepresentation标准的数据库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

是否可以只更改默认MongoClient配置关于更改UuidRepresentation而不创建新的MongoClient Bean

我在Java8中使用SpringBoot 2.1.3