sql >> Database >  >> NoSQL >> MongoDB

Hoe alleen specifieke velden voor een query retourneren in Spring Data MongoDB?

MongoDB retourneert alleen JSON-documenten voor standaardquery's. Wat je graag zou willen zien, kan worden bereikt door nog steeds een List<Foo> terug te sturen . De fields eigenschap in @Query zal ervoor zorgen dat alleen de velden die zijn ingesteld op 1 worden geretourneerd.

@Query(value="{ path : ?0}", fields="{ path : 0 }")
List<Foo> findByPath(String path);

We raden meestal aan om daarvoor een speciale DTO in te voeren, zodat u de gedeeltelijk gevulde Foo . voorkomt instantie van overhandigen aan save(…) op zijn beurt.

Een andere optie is het gebruik van het aggreatieraamwerk, maar dat is ingewikkelder.



  1. MongoDB voegt gerelateerde collectie-items samen met andere collectieresultaten

  2. Predis geeft 'Fout bij het lezen van regel van server'

  3. nodejs-toepassing - mongodb-verbinding mislukt met fout ECONNREFUSED

  4. MongoDB-jokerteken in de sleutel van een query