Hibernate:有没有办法自动将原生SQL结果转换为自定义对象?

Jay*_*Pea 3 java sql hibernate

我有一个本机SQL查询返回几个计算结果(如几个表的总和和平均值),我想将这些结果加载到包含所有必要字段的自定义对象.我知道Hibernate提供了addEntity方法,它允许您指定结果所代表的映射实体的类型.

在这种情况下,由于结果来自多个表,因此我使用的自定义对象不是映射实体.有没有办法让hibernate返回一个List<CustomObject>或者我必须手动将结果复制到正确的对象?谢谢.

Query query = this.sessionFactory.getCurrentSession().createSQLQuery(queryString.toString());

return (List<CustomObject>)query.list(); //doesn't work, obviously
Run Code Online (Sandbox Code Playgroud)

min*_*das 5

结果变形金刚.它们旨在完全满足您的需求并为HQL和SQL工作.