我想问一下使用spring boot为MongoClient bean配置MongoClientOptions的最佳方法是什么。例如,我想将readPreference设置为secondary。对于某些mongodb连接配置,我可以使用application.yml文件和' spring.data.mongodb'提供设置。属性。有没有办法将它也指定为属性,还是必须使用java配置? 你能否重新引导我一些不错的例子?
答案 0 :(得分:2)
查看boot repo中的autoconfig类是我经常开始的地方:
如果查看MongoAutoConfiguration.java,您会发现它将尝试自动装配MongoClientOptions类型的bean。如果您只是在应用程序中创建此类的@Bean,我相信它将使用该配置。据我所知,目前只有少数配置属性可以在application.yml中配置(请参阅MongoProperties.java类了解完整集)。
我不能说这是“最好”的方式,但我怀疑这是作者在这一点上的意图。我当然可以看到对配置属性进行了增强,允许通过属性设置更多的客户端选项(这会让IMO感觉更“笨拙”。