用博客记录工作中出现的问题,给自己一个提醒,也给其他朋友一些借鉴。
报错: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(){});
/**
* 查询所有用户记录总数
*/
public Integer getUsersCount() {
String hql = "select count(*) from Users";
List list = super.pageQuery(hql, null, null, null);
return (Integer) list.get(0);
}
解决办法:
public Integer getUsersCount() {
String hql = "select count(*) from Users";
List list = super.pageQuery(hql, null, null, null);
Number num = (Number) list.get(0);
return num.intValue();
}
注:java.lang.Number是Integer,Long的父类.
分享到:
相关推荐
idea启动项目报错 java.lang.NegativeArraySizeException解决方法
该jar包解决报错java.lang.NoClassDefFoundError: org/apache/james/mime4j/MimeException,亲测可用。
报错 java.lang.OutOfMemoryError: PermGen space 报错 java.lang.OutOfMemoryError: Java heap 启动报错java.lang.ClassNotFoundException: 1catalina.org.apache.juli.FileHandler JAVA_OPTS="-server -Xms800m ...
java.lang.IllegalArgumentException Cannot format given Object as a Date
java.lang.UnsupportedOperationException异常(csdn)————程序
在与银联的对接中,调试过程中报错或使用类似登入加密:java.lang.SecurityException: JCE cannot authenticate the provider BC 进行问题解决,里面包含 bcprov-jdk16-143.jar与bcprov-jdk15-135.jar与具体文件存放...
编写basedao的时候报错:java.lang.Class cannot be cast to java.lang.reflect.Parameterized
NULL 博文链接:https://hw1287789687.iteye.com/blog/1925191
java.lang.NoSuchFieldError: Companion 问题的解决方案
在jsp运行过程中,报错 java.lang.NoClassDefFoundError org.apache.xml.serializer.TreeWalker时的处理方法。
java.lang.NumberFormatException For inputstring 4294967295处理方法
java解决nested exception is java.lang.OutOfMemoryError Java heap space 解决OOM
com.springsource.tcl.lang.jacl-1.4.1生成报错替换包.zip
java.lang.OutOfMemoryError: Java heap space 解决方法
java.lang.runtimeexception unexpected subelement
解决java.lang.StackOverflowError
java.lang.OutOfMemoryError处理错误
搜集整理关于java错误处理:java.lang.OutOfMemoryError: Java heap space java.lang.OutOfMemoryError: Java heap space 资料整理
"java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver" 解决方案 [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket. 解决了jsp连接 sql server 2000的问题