Spring Hibernate SQL Query - PullRequest
       7

Spring Hibernate SQL Query

0 голосов
/ 01 апреля 2009

У меня есть класс VO, в котором также есть метод получения и установки другого класса VO. Например:

Class DocumentVO{
   PrintJobVO job;
   PrintRunVO run;
   String id;
   getters and setters..
}

Теперь у меня есть требование использовать Native SQL Query с использованием Spring Hibernate. Когда я хочу отобразить идентификаторы, у меня возникает проблема. Мой запрос

select {r.*},{d.*}
from runs {r}, documents {d}
where {r}.RUN_ID as {r.id} = d.RUN_ID as {d.run.id}

Здесь run имеет тип PrintRunVO, который имеет свой идентификатор и другие значения. Как я могу отобразить их в моем SQL? Я получаю сообщение об ошибке типа invalid user.table.column, table.column, or column specification.

Какой способ преодолеть это?

1 Ответ

1 голос
/ 01 апреля 2009

Используйте концепцию Result Transformer в вашем простом SQL-запросе.

String query = "myquery";
SQLQuery q = session.createSQLQuery(query);
q.addScalar("param1", Hibernate.STRING);
q.addScalar("param2", Hibernate.STRING);
q.setResultTransformer(Transformers.aliasToBean(MyVO.class));
q.setParameter("queryParam1", "some value");
return q.list();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...