У меня есть класс Cat и класс Owner. У кота есть один владелец, но у владельца может быть много кошек. Я хочу запросить «получить всех владельцев, у которых есть кошка с голубыми глазами».Критерий Hibernate присоединяется к запросу один к большому числу
class Cat{
Owner owner; //referenced from Owner.id
String eyeColor;
}
class Owner{
List<Cat> catList;
}
Я пробовал некоторые коды, но я действительно не знаю, что делать.
Criteria criteria = getCurrentSession().createCriteria(cat.getClass(), "cat");
criteria.createAlias("cat.owner", "owner");
criteria.add(Restrictions.eq("cat.eyeColor", "blue");
Является ли связь двунаправленной? Почему бы не использовать HQL для такого статического запроса? –
@ JBNizet извините, но у меня нет выбора, как использовать HQL. – hellzone
Является ли связь двунаправленной? Почему у вас нет выбора? Это как плотник, которому не разрешено использовать молоток! –