У меня есть 2 объекта:Получение массива псевдонимами элементов по индексу
User {
int id,
String name,
List<Status> statusList
}
Status {
int id,
int userId,
String name,
Date createDate
}
Я сопоставляются, что классы POJO в двух .hbm файлов, при этом в Status.hbm файле я сказал гибернации, что я хочу получить статусы из базы в DESC, упорядоченные по дате зрения:
<set name="statuses" order-by="date desc">
<key>
<column name="userId" />
</key>
<one-to-many class="Status" />
</set>
Теперь я хочу, чтобы выбрать список пользователей, которым выбрал (фе «Создан», или «Удалено») первый элемент в statusList собственности.
Я пишу:
sessionFactory.getCurrentSession().createCriteria(User.class)
.createAlias("statuses", "statusesAlias")
.add(Restrictions.eq("statusesAlias[0].name", "Created")).list();
Но я получаю сообщение об ошибке в
.add(Restrictions.eq("statusesAlias[0].name", "Created"))
Итак, вот вопрос - как я могу получить доступ к первому элементу свойства объекта, когда это свойство является псевдонимом как
.createAlias("statuses", "statusesAlias")
Какая ошибка? –
java.lang.reflect.InvocationTargetException –
Тогда вам понадобится сопоставить этот метод с Hibernate, тоже ... –