MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment puis-je exécuter Spring avec MongoDB désactivé, mais toujours installé ?

Si votre application se comporte de telle manière que MongoDB est facultatif, plusieurs options s'offrent à vous.

Si vous migrez une application existante, le plus simple dès le départ serait de exclure la configuration automatique et créez vous-même l'infrastructure. Pas de la manière que vous avez indiquée en retournant null depuis un @Bean la méthode est assez désagréable. Au lieu de cela, vous pourriez avoir un service qui pourrait créer paresseusement le client et vous pourriez mettre à jour vos utilisations facultatives de MongoDB pour passer par ce service. Le service serait créé indépendamment mais ne créerait l'infrastructure sous-jacente que si nécessaire.

L'autre option consiste à utiliser un profil. Si le cas d'utilisation principal est que MongoDB est disponible, créez un application-nomongo.properties (quelque chose comme ça) où vous excluriez la configuration automatique en utilisant le spring.autoconfigure.exclude propriété. Lorsque l'application démarre sans mongo, vous pouvez activer le nomongo profil et la configuration automatique s'arrêtera. Lorsqu'il n'est pas activé, le Mongo bean sera créé par Spring Boot.