我将尝试执行JPA中的select语句,但是遇到了以上错误。代码如下:
ListPersonsObj类:
我正在尝试在JPA中执行一个select语句,但是出现了上述错误。代码如下:
TypedQuery<ListPersonsObj> typedQuery = null;
String query = "";
List<ListPersonsObj> list = null;
if (some condition) {
query = "SELECT NEW in.healthelife.DGS.dao.ListPersonsObj"
+ "(c.personId, c.givenName, c.middleName, c.address1, "
+ "c.address2, c.dateOfBirth, "
+ "c.phoneNumber, c.email) FROM Patients c";
typedQuery = EntityManagerUtil.getEntityManager()
.createQuery(query, ListPersonsObj.class);
list = typedQuery.getResultList();
}
ListPersonsObj类:
public class ListPersonsObj {
private Long personId;
private String givenName;
private String middleName;
private String address1;
private String address2;
private String dateOfBirth;
private String phoneNumber;
private String email;
public ListPersonsObj() {
}
public ListPersonsObj(Long personId, String givenName, String middleName,
String address1, String address2,
String dateOfBirth, String phoneNumber, String email) {
this.personId = personId;
this.givenName = givenName;
this.middleName = middleName;
this.address1 = address1;
this.address2 = address2;
this.dateOfBirth = dateOfBirth;
this.phoneNumber = phoneNumber;
this.email = email;
}
public ListPersonsObj(ListPersonsObj list) {
try {
BeanUtils.copyProperties(this, list);
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// .. getters & setters
}
捕获到异常
java.lang.ClassCastException: org.hibernate.hql.internal.ast.tree.SqlNode无法转换为 org.hibernate.hql.internal.ast.tree.FromReferenceNode
能否有人详细解释一下这个问题。