我们正在使用Hibernate 5 jar,当我在命名参数值中发送字符串列表作为HQL的一部分时,我无法从查询字符串的Query中获取参数值。我们实际上将所有参数记录为拦截器的一部分。
HQL查询:SELECT test FROM test_table test test.pkeyIN:pkeys
API调用throw-query.getParameterValue()
Iterator<?> iter = query.getParameters().iterator();
while (iter.hasNext()) {
Parameter param = (Parameter) iter.next();
Object obj = null;
try {
obj = query.getParameterValue(param);
} catch (Exception e) {
LOGGER.debug("****Exception*****" + e.getMessage());
}
query.setParameter(param.getName(), obj);
throws java.lang.IllegalArgumentException:无法将QueryParameter引用[org.hibernate.engine.query.spi.NamedParameterDescriptor@1e2e23b9]解析为QueryParameterBinding。
之前有没有人遇到这个问题?请咨询。