报错: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没有任何继承关系,当然不能这样转换。
一个解决方案:
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的父类.
分享到:
相关推荐
// 将前端传来的数据转换成Article对象 Article article = new Article(); try { BeanUtils.copyProperties(article, fromMap); } catch (IllegalAccessException | InvocationTargetException e) { e....
### Struts+Spring+Hibernate通用分页方法详解 #### 一、引言 在Web应用开发中,分页是一项常用且重要的功能。特别是在处理大量数据时,合理的分页策略能够显著提升用户体验并减轻服务器压力。Struts+Spring+...
### Hibernate Criteria 分组、排序与关联查询详解 #### 标题与描述理解 - **标题**:“hibernate criteria 分组 排序 关联”这一标题明确了本文将围绕Hibernate Criteria API进行分组、排序以及关联查询的具体...
### Struts2 + Hibernate + 单表的增删改查 #### 一、概述 在当前的软件开发领域,特别是企业级应用开发中,MVC(Model-View-Controller)架构模式被广泛应用。Struts2作为Java Web开发中的经典框架之一,提供了...
在处理分页请求时,我们通常需要传递`pageSize`和`pageIndex`等参数。为了避免在每个查询方法中都显式地传入这些参数,我们可以使用`ThreadLocal`来存储这些公用参数。`ThreadLocal`为每个线程提供了一个独立的变量...
Hibernate 是一个流行的 Java 应用程序框架,用于简化数据库操作,通过对象关系映射(ORM)技术将数据库操作转化为对 Java 对象的操作。在 Hibernate 中,我们可以方便地实现记录的增(Insert)、删(Delete)、改...
JPA通过ORM(Object-Relational Mapping)映射机制将Java对象转换为数据库中的记录,使得开发者可以避免直接编写SQL语句,提高开发效率和代码的可维护性。 **SpringBoot**是Spring框架的一个子项目,旨在简化Spring...
84.8. 将一个键盘输入的数字转化成中文输出(例如:输入1234567,输出:一百二拾三万四千五百六拾七),请用java语言编一段程序实现! 114 84.9. 题目1:用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有...
JPA 在设计时充分考虑了现有的 Hibernate、TopLink、JDO 等 ORM 框架的特点,旨在创建一个统一的标准,使得不同的 ORM 实现能够遵循同一套规范进行开发。值得注意的是,JPA 本身只是一套规范,并非具体的产品,如 ...
- 转换结果类型为`Integer`并返回。 #### 八、小结 通过上述示例,我们可以看到HQL提供了一种简洁且强大的方式来处理数据库中的增删改查操作。理解这些基本操作的实现原理,有助于开发者更好地利用Hibernate框架来...
1. **get/load**:这两个方法都是用于根据主键获取实体对象,区别在于`get`会在找不到对应记录时抛出异常,而`load`则返回`null`。 - **示例**: ```java public Teacher getTeacherById(Long id) { return ...
在使用Hibernate进行数据操作时,`Criteria` API是一种灵活且强大的查询方式。它允许我们根据不同的条件构造复杂的查询语句,而无需直接编写SQL。在标题和描述中提到的“进阶查询herbinate”实际上是指使用Hibernate...
53、数据类型之间的转换: 14 54、字符串操作:如何实现字符串的反转及替换? 14 55、编码转换:怎样将GB2312 编码的字符串转换为ISO-8859-1 编码的字符串? 14 56、写一个函数,要求输入一个字符串和一个字符长度,...
HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的数据检索方式,使开发人员能够更高效地与数据库交互。本文将详细介绍HQL的基本用法及高级特性。 #### 1. 查询所有记录(Select) ...
12.金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一千零一拾一元整)输出。 81 三. html&JavaScript&ajax部分 82 1. 判断第二个日期比第一个日期大 82 2. 用table显示n条记录,每3行换一次...
12.金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一千零一拾一元整)输出。 81 三. html&JavaScript&ajax部分 82 1. 判断第二个日期比第一个日期大 82 2. 用table显示n条记录,每3行换一次...
12.金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一千零一拾一元整)输出。 81 三. html&JavaScript&ajax部分 82 1. 判断第二个日期比第一个日期大 82 2. 用table显示n条记录,每3行换一次...
Spring Data 旨在减少数据访问层的编码量,通过提供一套统一的方式来与各种类型的数据存储进行交互,包括 NoSQL 和关系型数据库。 Spring Data 支持的 NoSQL 存储包括但不限于 MongoDB(文档数据库)、Neo4j(图形...
12.金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一千零一拾一元整)输出。 81 三. html&JavaScript;&ajax;部分 82 1. 判断第二个日期比第一个日期大 82 2. 用table显示n条记录,每3行换一次...