Rub*_*ain 4 java hibernate jpa reserved-words jpql
我正在尝试在 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();
}
Run Code Online (Sandbox Code Playgroud)
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
}
Run Code Online (Sandbox Code Playgroud)
捕获异常
java.lang.ClassCastException: org.hibernate.hql.internal.ast.tree.SqlNode 无法转换为 org.hibernate.hql.internal.ast.tree.FromReferenceNode
任何人都可以对此有所了解。
| 归档时间: |
|
| 查看次数: |
3142 次 |
| 最近记录: |