Saat menggunakan Spring Data REST, ia memiliki sesuatu yang dirancang khusus untuk ini. Ada gagasan tentang Proyeksi dan Kutipan dengan itu Anda dapat menentukan apa dan bagaimana Anda ingin mengembalikannya.
Pertama, Anda akan membuat antarmuka yang hanya berisi bidang yang Anda inginkan.
@Projection(name="personSummary", types={Person.class})
public interface PersonSummary {
String getEmail();
String getId();
String getName();
}
Kemudian pada PersonRepository
your Anda tambahkan ini sebagai default untuk digunakan (hanya akan berlaku untuk metode yang mengembalikan koleksi!).
@RepositoryRestResource(excerptProjection = PersonSummary.class)
public interface PersonRepository extends CrudRepository<Person, String> {}
Kemudian saat melakukan kueri untuk koleksi, Anda hanya akan mendapatkan bidang seperti yang ditentukan dalam proyeksi dan saat mendapatkan satu instance, Anda akan mendapatkan objek penuh.