我将尝试以下内容:
MyResult.java :
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EntityResult;
import javax.persistence.SqlResultSetMapping;
@Entity
@SqlResultSetMapping(name = "myResults", entities = {@EntityResult(entityClass = MyResult.class)})
public class MyResult implements Serializable
{
/**
*
*/
private static final long serialVersionUID = -1934790337160508576L;
@Column(name="X")
private int x;
@Column(name="Y")
private double y;
//
// Getters and Setters...
//
}
在另一个Java类中:
Query q = ((org.hibernate.ejb.QueryImpl) this.entityManager.createNativeQuery (this.sql,
"myResults")).getHibernateQuery ( );
List<MyResult> result = q.list ( );
当我运行此代码时,我收到以下错误信息:
[PersistenceUnit: MyHibernatePgSql] 无法配置 EntityManagerFactory
当我从MyResult.java中删除“@Entity”部分时,我会得到如下错误信息:org.hibernate.MappingException: 未知的 SqlResultSetMapping [myResults]
我知道我做错了什么,但不知道是什么?同时,我找不到关于这个问题的好文档。 谢谢。编辑:查询看起来像这样:SELECT X,AGG_FUNC(F)AS Y FROM ...