У меня есть класс Project
, который имеет Set
пользовательских историй, называемых userStories12many
. У меня неприятности, пытаясь получить проект, который имеет определенную в пользовательские истории набора getComponent(int userStoryID)
Проблема языка запросов HIbernate
Я думаю, им на правильном пути, но я не знаю, что я сделал неправильно
public Projects getComponent(int userStoryID) {
Session session = SessionFactoryHelper.getSessionFactory()
.getCurrentSession();
session.beginTransaction();
List<Projects> compo = session.createQuery("select p "
+ "from Projects as p inner join fetch p.userStories12many as u "
+ "where u.storyId='" + userStoryID + "'").list();
session.getTransaction().commit();
return compo.get(0);
}
определить «неприятности». Вы получаете исключение? Если да, то какой? Вы ошибаетесь? Большинство отчетов об ошибках, которые я получаю от обычных пользователей, более ясны, чем ваш вопрос. – meriton
В вашем вопросе вы говорите, что у вас есть класс «Проект», но в вашем примере у вас есть ссылки на класс «Проекты» (множественное число проекта). Это опечатка или вы имеете в виду два отдельных класса? –
Создание запросов hql вручную (строка concat) является чрезвычайно склонной к ошибкам. Я предлагаю использовать @NamedQuery. Они будут проверяться на правильность, кэшироваться и безопаснее (без SQL-инъекций). – whiskeysierra