Czy dane sprężyn mają mechanizm zwracania określonych pól?Dane źródłowe JPA dotyczące zwracania określonych pól
jestem zaznajomiony ze składnią:
Invoice findByCode(String code);
Jak o tym:
Integer findIdByCode(String code);
która zwraca tylko pola id. Lub
Tuple findIdAndNameByCode(String code);
która zwraca krotkę. Lub
Invoice findIdAndNameByCode(String code);
który zwraca jednostkę wypełnioną tylko z określonymi polami. Potrafi użyć konstruktora pobierającego tylko te pola, jeśli jest zdefiniowane - w innym przypadku konstruuj puste i wypełnij pola.
EDIT
Aby zakwalifikować się trochę więcej, jestem świadomy rozwiązań takich jak @query, wyrażeń konstruktorów i teraz, @NamedEntityGraph. Moje pytanie jest po prostu - czy dane z Springa wspierają tak skróconą składnię, jak sugeruję?
Jeśli nie, być może to jest cool wzmocnienie dla nowszej wersji ...
ja nie szukam rozwiązania.
Patrz [przewodnik] (http: //docs.spring .io/spring-data/jpa/docs/1.8.0.RELEASE/reference/html/# jpa.entity-graph) wymaga wersji 2.1 i nowszych • Wersja Spring Data JPA. –
NamedEntityGraph to użyteczna funkcja, ale bardziej szczegółowa niż przy użyciu @Query do rozwiązywania moich scenariuszy. Chciałbym zobaczyć rozwiązanie bez żadnych adnotacji. – Gilbert
W jaki sposób '@ Query' nie jest adnotacją .. Zamiast więc używać domyślnego rozwiązania, które chcesz obejść. Tak czy inaczej, musisz coś zrobić, aby zwrócić podzbiór danych, który chcesz, używając domyślnego, który jest wielokrotnego użytku podczas wykonywania zapytania, musisz za każdym razem powtarzać wszystko i tworzyć wiele różnych konstruktorów. –