Spring boot mongoclient首选配置

时间:2015-08-10 15:53:27

标签: spring spring-boot mongotemplate

我想问一下使用spring boot为MongoClient bean配置MongoClientOptions的最佳方法是什么。例如,我想将readPreference设置为secondary。对于某些mongodb连接配置,我可以使用application.yml文件和' spring.data.mongodb'提供设置。属性。有没有办法将它也指定为属性,还是必须使用java配置? 你能否重新引导我一些不错的例子?

1 个答案:

答案 0 :(得分:2)

查看boot repo中的autoconfig类是我经常开始的地方:

https://github.com/spring-projects/spring-boot/tree/master/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/mongo

如果查看MongoAutoConfiguration.java,您会发现它将尝试自动装配MongoClientOptions类型的bean。如果您只是在应用程序中创建此类的@Bean,我相信它将使用该配置。据我所知,目前只有少数配置属性可以在application.yml中配置(请参阅MongoProperties.java类了解完整集)。

我不能说这是“最好”的方式,但我怀疑这是作者在这一点上的意图。我当然可以看到对配置属性进行了增强,允许通过属性设置更多的客户端选项(这会让IMO感觉更“笨拙”。