Сочетание результата 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 объединяет данные в один объект.
Можете ли вы опубликовать код, чтобы мы могли понять, что вы пытаетесь достичь!!!