sql >> Databáze >  >> NoSQL >> MongoDB

Přidejte volitelný parametr dotazu pomocí úložiště jarních dat mongodb

Pomocí @Query toho nelze dosáhnout . Další možné alternativy jsou

  1. Vytvořte dvě metody ve třídě úložiště. Jeden, který bere pouze id a druhý, který bere id a další argumenty. A ve své servisní třídě se můžete rozhodnout, kterou zavoláte na základě dat, která máte k dispozici. (Není škálovatelné)

  2. Použijte QueryDsl. Díky tomu můžete vytvářet kritéria vyhledávání na základě dat, která máte dynamicky. Některé užitečné odkazy
    https://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#core.extensions.querydsl
    http://www.baeldung.com/queries-in -spring-data-mongodb

  3. Můžete použít Example . Zde je odkaz na dokumentaci.(To má určitá omezení)

Podle mých osobních zkušeností je použití QueryDsl nejlepším způsobem, jak tyto případy řešit, a lze jej snadno rozšířit o další změny v požadavcích.




  1. Jak filtrovat pole v dokumentu Mongodb pomocí Spring

  2. Redis jako mezipaměť druhé úrovně Hibernate

  3. Vedení pole ve skupině mongodb podle

  4. Jak mohu použít doplněk mongolab do Heroku z pythonu?