sql >> Database >  >> NoSQL >> MongoDB

Voeg optionele queryparameter toe met behulp van spring data mongodb-repository

U kunt dit niet bereiken met @Query . Andere mogelijke alternatieven zijn

  1. Maak twee methoden in de klasse Repository. Een die alleen id nodig heeft en een andere die id en andere argumenten nodig heeft. En in uw serviceklasse kunt u beslissen welke u belt op basis van de beschikbare gegevens. (Niet schaalbaar)

  2. Gebruik QueryDsl. Hiermee kunt u zoekcriteria creëren op basis van gegevens die u dynamisch heeft. Enkele handige links
    https://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#core.extensions.querydsl
    http://www.baeldung.com/queries-in -spring-data-mongodb

  3. U kunt Example . gebruiken . Hier is de link voor documentatie.(Dit heeft enkele beperkingen)

In mijn persoonlijke ervaring is het gebruik van QueryDsl de beste manier om deze gevallen aan te pakken en het kan eenvoudig worden uitgebreid voor verdere wijzigingen in de vereisten.




  1. Scotty gebruikt MongoDB

  2. node redis, variabelen worden gedeeld tussen clients?

  3. Afhankelijkheden proberen op te lossen:.NET Standard Library wijzigen in NET Core - Microsoft.Extensions.Primitives

  4. Azure Redis Session State-fout Time-out bij het uitvoeren van EVAL, inst:1 , queue:2