这个是查询源码!
实体配置中对应的类型也没有问题,但是执行就会报这个错误!
问题是我自己开发的机器上运行没有问题,但一放到服务器上,就会出现这个问题!
求大神指教!在线急等!
------解决思路----------------------
是不是jdk版本不一样
------解决思路----------------------
会不会是数据源的问题,把出错的数据拿到本地试一下
------解决思路----------------------
报错:java.lang.Long cannot be cast to java.lang.Integer
Long 无法转化成Integer类型.
这个异常 经常出现在hinbernate分页查询的时候.
原因:
这里在Hibernate2.0之前版本list.get(0)返回的是Integer类型.
但是在Hibernate3.0以后版本list.get(0)返回的是Long类型.
所以在这里不可以由Long型强转成Integer类型.
Integer属于不可更改类型,而且Long和Integer没有任何继承关系,当然不能这样转换。
例如:
注: super.pageQuery(hql,null,null,null);调用了一个父类的一个封装方法.查询时候使用
List list = this.getHibernateTemplate().executeFind(new HibernateCallback(){});
------解决思路----------------------
在将String类型强制转换成Integer时 语法没错,但是在编译的时候我们会错。。。就会报java.lang.String cannot be cast to java.lang.Integer
从文字而言可以看出是 String不能转换成Integer类型
那么就用valueof