sql >> Databasteknik >  >> NoSQL >> MongoDB

Vill du bara visa vissa fält när du visar ett specifikt objekt med vårdata?

När du använder Spring Data REST har den något speciellt designat för detta. Det finns idén om Projektioner och utdrag med den kan du specificera vad och hur du vill returnera den.

Först skulle du skapa ett gränssnitt som bara skulle innehålla de fält du vill ha.

@Projection(name="personSummary", types={Person.class})
public interface PersonSummary {
    String getEmail();
    String getId();
    String getName();
}

Sedan på ditt PersonRepository lägg till detta som standard att använda (kommer bara att gälla metoder som returnerar samlingar!).

@RepositoryRestResource(excerptProjection = PersonSummary.class)
public interface PersonRepository extends CrudRepository<Person, String> {}

När du sedan gör en fråga för en samling får du bara de fält som anges i projektionen och när du skaffar en enstaka instans får du hela objektet.



  1. välj distinkt mongodb C#

  2. Hur man avinstallerar mongodb från Windows

  3. hur kan man lagra en Json i redis med hashmap(HSET)

  4. Mapreduce i mongodb ruby ​​infödd drivrutin