Сочетание результата Hibernate ResultTransformer с оригинальным объектом Hibernate

Вот что я пытаюсь сделать: 1. Отправить HQL для заполнения объекта Hibernate "Пользователь". 2. Отправьте собственный SQL-запрос для получения меньшего набора данных из очень большого столбца данных из таблицы "Пользователь". 3. Объедините сопоставленный объект Hibernate с результатом столбца из шага 2.

Я читал, что ResultTransformer может использоваться для сопоставления результирующего набора от 2 до объекта Hibernate, который в моем случае является объектом "Пользователь". Есть ли способ вставить результаты сопоставления ResultTransformer в мою исходную сущность пользователя?

Вот несколько примеров: 1. HQL - от пользователя. Мы используем файл отображения Hibernate для пользователя и, используя байт-код Enhancement, устанавливаем "xmlStringColumn lazy=true". String hql = "ОТ пользователя"; Список пользователей = session.createQuery(hql).list(); 2. отправляем запрос
Список resultXML = s.createSQLQuery( "XML SQL для получения определенных данных") .setResultTransformer( Transformers.aliasToBean(User.class)) .list();

Пользователь dto =(Пользователь) resultWithAliasedBean.get(0); // Нужен код для объединения User dto из SQL в оригинал

1 ответ

ResultTransformer объединяет один или несколько объектов отношений в один объект. Например,

Класс А {

Установите b= новый Hashset ();

}

Так что, если вы начнете запрос из класса A и добавите соединение в B, это приведет к созданию нескольких объектов A.

ResultTransformer объединяет данные в один объект.

Можете ли вы опубликовать код, чтобы мы могли понять, что вы пытаетесь достичь!!!

Другие вопросы по тегам