Я унаследовал кодовую базу с некоторыми моделями и просьбу реализовать их сортировку. Поскольку я не спящий гуру, я в тупике.
(простите за псевдокод)
class Event {
@OneToMany(mappedBy="event", fetch=FetchType.LAZY)
@Cascade({CascadeType.ALL, CascadeType.DELETE_ORPHAN})
private List<Attendee> attendees = new ArrayList<Attendee>(50);
}
class Attendee {
@ManyToOne
@JoinColumn(name="event_id")
private Event event;
@ManyToOne
@JoinColumn(name="person")
private Person person;
}
class Person {
private string lastName;
private string firstName;
}
Я бы хотел отсортировать список участников мероприятия по фамилии / имени человека, но я не вижу, как это сделать с таблицей посередине. Я нашел много онлайн-ссылок, которые прекрасно работали бы без средней таблицы. Я пытался использовать (в классе Event):
@OrderBy("attendee.person.lastName")
@OrderBy("person.lastName")
и в классе Attendee:
@OrderBy("attendee.lastName")
@OrderBy("lastName")
без удачи. Есть ли у кого-нибудь какие-либо предложения или рекомендации, которые могут иметь понимание? Я могу опубликовать фактические данные, если это поможет или если какие-то вопросы помогут глубже.