Spring Data JPA. Wie man nur eine Liste von IDs von findAll () - Methode

Ich habe ein sehr kompliziertes Modell. Entity hat eine Menge Beziehungen und so weiter.

Ich versuche es mal mit Spring Data JPA aus und ich bereitete ein repository.

aber wenn ich auf eine metod findAll() mit Angabe der für das Objekt einen haben ein performance-Problem, weil Objekte sind sehr groß. Ich weiß, dass, weil, wenn ich eine Methode aufzurufen, wie diese:

@Query(value = "select id, name from Customer ")
List<Object[]> myFindCustomerIds();

Ich habe keine Probleme mit der performance.

Aber wenn ich rufe

List<Customer> findAll(); 

Hatte ich ein großes problem mit der Leistung.

Das problem ist, dass ich machen zu müssen findAll-Methode, mit der Spezifikationen für Kunden, dass ist der Grund, warum ich nicht verwenden Methode gibt eine Liste von arrays von Objekten.

Wie Sie schreiben, eine Methode zu finden, die alle Kunden-Spezifikationen für Customer-Entität, sondern gibt nur ein IDs.

wie diese:

List<Long> findAll(Specification<Customer> spec);
  • Ich nicht verwenden können, in diesem Fall die Paginierung.

Bitte helfen.

InformationsquelleAutor der Frage user6778654 | 2015-05-19

Schreibe einen Kommentar