Hibernate - 参数值[2011]不匹配类型[java.lang.Integer]。怎么解决? [英] Hibernate - Parameter value [2011] was not matching type [java.lang.Integer]. How to solve?
本文介绍了Hibernate - 参数值[2011]不匹配类型[java.lang.Integer]。怎么解决?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
即使我正在通过Integer传递给指定查询的值,我也得到了上面的消息。
任何人都可以解释为什么?
谢谢
DAO Java代码
日历cal = Calendar.getInstance();
cal.setTime(interval.getStartDate());
query.setParameter(academicYear,new Integer(cal.get(Calendar.YEAR)));
查询:
@NamedQuery(name =StudentDemographics.findByMOEDEqual,query =SELECT s.student FROM StudentDemographics s+
where:academicYear = s.academicYear+
AND UPPER s.MOED)like:MOED),
错误:
参数值[2011]不匹配类型[java.lang.Integer]
环境是Spring Hibernate / JQL + SQL Server
解决方案
我有类似的问题,可以通过这种方式解决问题:
我使用 long int 作为相应字段的类型。
I am getting the message above even though the value I'm passing through an Integer to the named query. Can anyone explain why? Thanks
DAO Java Code
Calendar cal = Calendar.getInstance();
cal.setTime(interval.getStartDate());
query.setParameter("academicYear", new Integer(cal.get(Calendar.YEAR)));
Query:
@NamedQuery(name = "StudentDemographics.findByMOEDEqual", query = "SELECT s.student FROM StudentDemographics s " +
"WHERE :academicYear = s.academicYear " +
"AND UPPER(s.MOED) like :MOED"),
Error: Parameter value [2011] was not matching type [java.lang.Integer]
Environment is Spring w Hibernate/JQL + SQL Server
解决方案
I had a similar problem and could fix it this way:
I used long instead of int as a type for the respective field.
这篇关于Hibernate - 参数值[2011]不匹配类型[java.lang.Integer]。怎么解决?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文