Учитывая представление таблиц базы данных, в которых две сущности связаны через таблицу соединений, можно ли отсортировать другую сущность, указав порядок сортировки, как-то с помощью аннотаций?
Рассмотрим примерно следующие таблицы базы данных:
actor ( id, name )
credit ( actorId, movieId, roleName )
movie ( id, title, year )
И спящие сущности, такие как:
@Entity
class Actor {
@Id
Integer id;
@Column
String name;
@OneToMany
@JoinColumn(name = "actorId")
List<Credit> credits;
}
@Entity
class Credit {
@Column
String roleName;
@ManyToOne
@JoinColumn(name = "movieId")
Movie movie;
}
@Entity
class Movie {
@Id
Integer id;
@Column
Integer year;
@Column
String title;
}
Так что я бы хотел, чтобы порядок сортировки по умолчанию возвращал кредиты для актера в порядке убывания к году фильма:
actor.getCredits(); // Returns credits in order of Credit.movie.year
Кажется, что объединение на одном уровне достаточно просто для сортировки с использованием @OrderBy, например @OrderBy ("roleName") ... но как мне перейти к еще одному объединению глубже?
Спасибо!