MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie kann ich Spring mit deaktiviertem, aber noch installiertem MongoDB ausführen?

Wenn sich Ihre Anwendung so verhält, dass MongoDB optional ist, haben Sie mehrere Möglichkeiten.

Wenn Sie eine vorhandene Anwendung migrieren, wäre es von Anfang an am einfachsten, die automatische Konfiguration ausschließen und die Infrastruktur selbst schaffen. Nicht so, wie Sie angegeben haben, dass null zurückgegeben wird aus einem @Bean Methode ist ziemlich böse. Vielmehr könnten Sie einen Dienst haben, der den Client faul erstellen könnte, und Sie könnten Ihre optionalen Verwendungen von MongoDB aktualisieren, um diesen Dienst zu durchlaufen. Der Dienst würde trotzdem erstellt werden, aber nur die zugrunde liegende Infrastruktur erstellen, wenn dies erforderlich ist.

Die andere Möglichkeit ist die Verwendung eines Profils. Wenn der Hauptanwendungsfall darin besteht, dass MongoDB verfügbar ist, erstellen Sie eine application-nomongo.properties (etwas in der Art), wo Sie die automatische Konfiguration mit spring.autoconfigure.exclude ausschließen würden Eigentum. Wenn die Anwendung ohne Mongo startet, können Sie nomongo aktivieren Profil und die automatische Konfiguration wird zurückgenommen. Wenn es nicht aktiviert ist, wird der Mongo Bean wird von Spring Boot erstellt.