[英]How to map query to non-entity class + entity class
我知道如何在IBatis中查询resultClass映射。
如何将本机查询结果映射到hibernate中混合了实体类和标量的对象? 如何设置参数?
请帮忙。
使用Hibernate Session
API,您可以通过组合addEntity()
和addScalar()
方法来实现:
Query q = s.createSQLQuery(
"select p.*, count(e.id) as c " +
"from Project p left join Employee e on p.id = e.project_id " +
"group by p.id")
.addEntity(Project.class).addScalar("c");
在JPA中,您可以使用@SqlResultSetMapping
:
@SqlResultSetMappings(
@SqlResultSetMapping(name = "projectWithCount"
entities = @EntityResult(entityClass = Project.class),
columns = @ColumnResult(name = "c")))
...
Query q = s.createSQLQuery(
"...", "projectWithCount")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.