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

Kombination von Spring-Data für MongoDB und ElasticSearch

Die Verwendung mehrerer Spring Data-Module in einem Projekt ist möglich, erfordert jedoch Aufmerksamkeit bei der Einrichtung.

Das Vorhandensein von mehr als einem Spring Data-Modul im Klassenpfad ermöglicht eine strenge Konfiguration, die für Spring Data erforderlich ist, um zwischen Repository-Verantwortlichkeiten zu unterscheiden. Dies erfolgt hauptsächlich durch Annotationen und ob ein bestimmtes Repository in die Typhierarchie passt. In Ihrem Fall Goal ist mit MongoDB- und Elasticsearch-Annotationen annotiert, sodass beide Module den Drang verspüren, Repositories zu implementieren.

Die einzige Möglichkeit besteht bisher darin, Repositories in verschiedenen Paketen zu halten und diese Pakete als Basispakete in @Enable…Repositories zu verwenden . Angenommen, Ihre Elasticsearch-Repositorys befinden sich in org.jhipster.elasticsearch.repository Ihre Anwendungskonfiguration könnte folgendermaßen aussehen:

@EnableMongoRepositories("org.jhipster.mongo.repository")
@EnableElasticsearchRepositories("org.jhipster.elasticsearch.repository")
@SpringBootApplication
public class SpringBootApplication { … }

HTH, Markus