在Hibernate中使用`in()`调用命名查询

时间:2017-12-01 18:20:56

标签: java hibernate

这是我的Hibernate namedQuery:

@NamedQuery(name = "getLanguagesForIds", query = "select l from Language l where l.languageId in(:ids)")

当我尝试执行查询时,Hibernate会抛出异常:

java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer

我以逗号分隔传递语言ID,如1,2。有谁知道如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

使用List = new ArrayList来保存id并将其作为参数值而不是逗号分隔的字符串传递。