如果您的应用程序表现为MongoDB是可选的,则您有几种选择。
如果要迁移现有应用程序,那么从一开始最简单的方法就是排除自动配置并自己创建基础结构。您所指出的null
从@Bean
方法中返回的方式并不是很讨厌。相反,您可以拥有一些可以延迟创建客户端的服务,并且可以更新MongoDB的可选用法以通过该服务。无论如何都将创建服务,但仅在必要时创建基础基础结构。
另一种选择是使用配置文件。如果主要用例是MongoDB可用,则创建一个application- nomongo.properties
(类似的东西),您将在其中使用spring.autoconfigure.exclude
属性排除自动配置。当应用程序在没有mongo的情况下启动时,您可以启用nomongo
配置文件,并且自动配置将退出。如果未启用它,那么Mongo
它将由Spring Boot创建。