Załóżmy że mamy klasy Book i Review
Klasa Review ma ocene ( w skali 0-5 np.) i mapowania na wiele do jednego względem Book.
Zastanawiam się jak optymalnie przeprowadzić operację wybrania książek i dodania do nich sumy ilości recencji i średnej oceny bez stosowania fetch joina - po prostu chce wybrać książki i dane z recenzji bez ładowania recenzji
Czy istnieje jakaś optymalna metoda na to?
Można by użyć @Formula ale raczej nie jest to specjalne odpowiednie(mało optymalne),można jeszcze wybrać chyba takie coś w HQL i wtedy zwróci listę tablic obiektów, ale czy istnieje jakaś inna opcja (np. taka żeby można było korzystać z Criteria API)
0
0
Spróbuj z czymś takim. Nie jestem pewny czy zabangla, ale jeżeli tak, to będzie optymalne. Do tego da się to przepisać na Criteria API (bueee).
@AllArgsConstructor
class BookWithReviewCount {
private Book book;
private Integer reviewCount;
}
Select new BookWithReviewCount(b, count(r)) FROM Book b INNER JOIN b.reviews r