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

Come restituire solo campi specifici per una query in Spring Data MongoDB?

MongoDB restituisce solo documenti JSON per query standard. Quello che vorresti vedere può essere ottenuto restituendo comunque un List<Foo> . I fields proprietà in @Query causerà la restituzione solo dei campi impostati su 1.

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

Di solito consigliamo di introdurre un DTO dedicato per questo in modo da evitare il riempimento parziale di Foo istanza dalla consegna a save(…) a sua volta.

Un'altra opzione è usare il framework di aggregazione, ma è più complicato.