1

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

名前の代わりにシーケンスを使用してパラメーターを設定すると、以前は正常に機能していたので、私はそれと混同しています。誰か私にそのアイデアを教えてください。

前もって感謝します。

4

1 に答える 1

2

ばかげた質問ですが、「setParameterList」のメソッドでコレクション パラメータを設定する必要があります。

于 2013-10-31T03:30:34.747 に答える