处于 hibernate 状态
连接查询可以映射到非实体类。 How to map a database query into an Object [in Java]?
<class name=... select="select A.field_a, B.field_b, ... from A, B, ...">
我怎样才能在 JPA/Hibernate 中实现同样的事情?
最佳答案
在 hibernate 中,您可以在查询的 select 子句中调用任意类的构造函数。
@NamedQuery( name = "myScalarQuery" query =
"select new org.stackoverflow.hibernate.QueryResultObject(A.field_a, B.field_b)
from A, B
where a.someUsefulProperty = b.someComparableProperty")
等(注意需要完全限定的类名)
那么您只需要具有匹配构造函数的类
public class QueryResultObject {
public QueryResultObject(TypeOfFieldA fieldA, TypeOfFieldB fieldB) {
//etc
}
}
关于java - 如何将连接查询映射到 JPA 中的非实体类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5024533/