setresulttransformer example createsqlquery hibernate hql resulttransformer

hibernate - example - ¿Cómo modificamos el transformador HQL al cargar un elemento primario específico u otra propiedad de entidad mapeada?



resultset hibernate (0)

Esta es una adición importante especialmente para resolver problemas de rendimiento mientras se pueden escribir consultas HQL dinámicas eficientes.

Pero, ¿cómo modificamos el transformador HQL en caso de cargar un padre específico u otra propiedad de entidad mapeada?

El siguiente código:

session.createQuery( "select st.stNumber as stNumber, st.stDate as stDate " + " from SomeTable st " + " where st.someTableId < 1000") .setResultTransformer( Transformers.aliasToBean(database.SomeTable.class)) .list();

funciona bien, pero ¿qué ocurre si quiero cargar solo algunas de las propiedades de sus padres?

Por ejemplo, digamos, SomeTable tiene un padre llamado SomedParent y quiero acceder solo a uno de los campos de este padre.

session.createQuery( "select st.stNumber as stNumber, st.stDate as stDate, st.someParent.someParentField as someParentField " + " from SomeTable st " + " where st.someTableId < 1000") .setResultTransformer( Transformers.aliasToBean(database.SomeTable.class)) .list();

Entonces, ¿alguna idea?