Jpa 无法为具有多个返回的查询创建TypedQuery
我正在使用以下JPA查询,并获得java.lang.IllegalArgumentException:无法为具有多个返回异常的查询创建TypedQueryJpa 无法为具有多个返回的查询创建TypedQuery,jpa,Jpa,我正在使用以下JPA查询,并获得java.lang.IllegalArgumentException:无法为具有多个返回异常的查询创建TypedQuery TypedQuery<RaBdrRating> uQuery = (TypedQuery<RaBdrRating>)entityManager.createQuery(" SELECT r.activePackage,SUM(r.duration),SUM(r.charge),COUNT(r)
TypedQuery<RaBdrRating> uQuery =
(TypedQuery<RaBdrRating>)entityManager.createQuery("
SELECT r.activePackage,SUM(r.duration),SUM(r.charge),COUNT(r)
FROM RaBdrRating r WHERE r.callType = :callType
and r.startDate between :startDate and :endDate
GROUP BY r.activePackage",RaBdrRating.class);
uQuery.setParameter("callType", model.getCallType());
uQuery.setParameter("startDate",startDate);
uQuery.setParameter("endDate",endDate);
List<RaBdrRating> listOfPackages = uQuery.getResultList();
TypedQuery uQuery=
(TypedQuery)entityManager.createQuery(“
选择r.activePackage、SUM(r.duration)、SUM(r.charge)、COUNT(r)
来自RABDR,其中r.callType=:callType
和r.startDate介于:startDate和:endDate之间
按r.activePackage“RaBdrRating.class”分组;
setParameter(“callType”,model.getCallType());
setParameter(“startDate”,startDate);
setParameter(“endDate”,endDate);
List listOfPackages=uQuery.getResultList();
有人能告诉我我的问题出在哪里吗…..我是JPA新手,我不知道问题出在哪里,我在这里被折磨了一下。如果有人有想法,请告诉我。这似乎是个错误:
显然,它在4.1.5版中已修复。这似乎是一个错误: 显然,它在4.1.5版中已修复。我遇到了相同的错误: 无法使用请求的结果类型为具有多个返回的查询创建TypedQuery 解决方案: 有这样一个查询:
Select e.fieldA, e.fieldB, e.fieldC From Entity e
必须使用查询中指定的参数声明构造函数:
package somepackage;
public class Entity {
...
public class Entity() {}
public class Entity(Type fieldA, Type fieldB, Type fieldC) {
this.fieldA = fieldA;
this.fieldB = fieldB;
this.fieldC = fieldC;
}
....
}
最后,修改您的查询
Select NEW somepackage.Entity(e.fieldA, e.fieldB, e.fieldC) From Entity e
您正在指示如何创建对象。我遇到了相同的错误:
无法使用请求的结果类型为具有多个返回的查询创建TypedQuery
解决方案:
有这样一个查询:
Select e.fieldA, e.fieldB, e.fieldC From Entity e
必须使用查询中指定的参数声明构造函数:
package somepackage;
public class Entity {
...
public class Entity() {}
public class Entity(Type fieldA, Type fieldB, Type fieldC) {
this.fieldA = fieldA;
this.fieldB = fieldB;
this.fieldC = fieldC;
}
....
}
最后,修改您的查询
Select NEW somepackage.Entity(e.fieldA, e.fieldB, e.fieldC) From Entity e
您正在指示将如何创建对象。相似的一个,可以引用&相似的一个,可以引用&