sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvordan returnerer man kun specifikke felter for en forespørgsel i Spring Data MongoDB?

MongoDB returnerer kun JSON-dokumenter til standardforespørgsler. Det, du gerne vil se, kan opnås ved stadig at returnere en List<Foo> . fields egenskab i @Query vil medføre, at kun de felter, der er sat til 1, returneres.

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

Vi anbefaler normalt at indføre en dedikeret DTO for det, så du forhindrer den delvist udfyldte Foo instans fra at blive afleveret til save(…) igen.

En anden mulighed er at bruge aggregeringsrammen, men det er mere involveret.



  1. Mocking Mongoose model med sjov

  2. Hvordan gemmer og opdateres binære data effektivt i Mongodb?

  3. Sådan får du det originale dokument tilbage efter sammenlægning

  4. MongoDB Tekstsøgning OG flere søgeord