当我试图使用hibernate计算记录数时,遇到了一个非常紧急的问题。通过调试,我得到了hql和相关的错误:
HQL公司:
SELECT COUNT(id) AS totalSize FROM UserAccount WHERE 1 = 1 AND role IN (:role_list) AND agent.id = :agentId
设置参数:

query.setParameter("role_list", parameter.getRoles());
query.setParameter("agentId", parameter.getAgentId());

错误:
java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.Integer
我对此感到困惑,因为以前当我将它的参数设置为sequence而不是name时,它工作得很好。有人能给我一些建议吗?
提前谢谢。

最佳答案

愚蠢的问题,我应该用'setparameterlist'方法设置集合参数。

10-06 02:26