在hibernate中,用criteria实现后台分页方法,不多说了直接看程序吧。
下面首先根据查询条件和每页记录数获得记录列表:
/**
* 根据不同条件获取日志列表
* @param inter 接口名称
* @param firstResult 起始记录
* @param maxResult 每页显示的最大记录数
* @return
*/
public List<UipInterfaceLog> getUipInterfaceLogsByCondition (String inter,int firstResult, int maxResult) {
List<UipInterfaceLog> result = null;
Criteria criteria = this.getSession().createCriteria(UipInterfaceLog.class);
criteria.add(Restrictions.like("inter", inter));
criteria.setFirstResult(firstResult);
criteria.setMaxResults(maxResult);
result = criteria.list();
return result;
}
在这里,为了简洁,我把查询的其他条件去掉了,用的时候可以自己添加,另外在使用的时候把Object.class换成相应的实体就可以了。
下面是得到符合条件的记录总数
/**
* 根据条件得到记录总数
* @param inter
*/
public int getUipInterfaceLogsByCondition (String inter) {
List<UipInterfaceLog> result = null;
Criteria criteria = this.getSession().createCriteria(Object.class);
criteria.add(Restrictions.like("inter", inter));
// return criteria.list().size; 一定不能写成这样,如果这样写,随着数据库中记录的增多,每次创建的对象会越来越多,这个方法执行速度会越来越慢,最终会内存溢出导致系统崩溃。
return ((Integer) criteria.setProjection(Projections.rowCount()).uniqueResult()).intValue();
}
代码就这么多,很容易看明白的。
分享到:
相关推荐
本主题聚焦于“Hibernate+Struts”框架下实现后台分页的策略和方法。 Hibernate是一个强大的Java持久化框架,它简化了与数据库的交互,而Struts则是一个用于构建MVC(模型-视图-控制器)架构的Web应用框架。结合这...
本项目是基于`jsp`(Java Server Pages)和`Hibernate`框架实现的分页功能,通过Java代码来详细展示了如何在Web应用中高效地实现这一功能。 `jsp`是Java的一种动态网页技术,允许开发者在HTML中嵌入Java代码,以...
2. **创建DAO层**:使用Hibernate的Session接口查询数据,实现分页查询的方法。这可能涉及到使用`Criteria`或`HQL`(Hibernate Query Language)来指定分页参数,如当前页数和每页记录数。 3. **整合Spring**:在...
4. **后台表格分页实现**:在实际应用中,通常会有一个专门的Service层方法处理分页请求,该方法先通过Hibernate查询数据,然后使用Spring的ModelMap或者自定义的Dto将数据打包返回给Struts2 Action。Action再将结果...
**Ajax+Hibernate+Struts 实现无刷新分页...在用户交互过程中,只需要使用Ajax异步请求分页数据,而后台则通过Hibernate的Criteria API完成分页查询,最后在前端用JavaScript更新页面显示,整个过程无需刷新整个页面。
使用Hibernate或JPA的Criteria API来实现动态的分页查询。你需要传递当前页和每页条数作为参数。 4. **定义数据模型**:定义与数据库表对应的Java实体类,并使用ORM工具(如Hibernate)生成映射文件,以便于Java...
【hibernate+struts2分页代码】是关于如何在Java Web开发中结合Hibernate ORM框架和Struts2 MVC框架实现数据分页的功能。在Web应用程序中,分页是提高用户体验的重要手段,它允许用户逐步浏览大量数据,而无需一次性...
在网页前端实现多条件搜索与后台分页是Web开发中常见的功能需求,它涉及到用户界面交互、HTTP请求处理以及数据库查询优化等多个方面。本篇将详细介绍如何实现这一功能。 首先,前端多条件搜索通常是在HTML表单中...
1. `List<T> listByPage(Session session, Criteria criteria, int pageSize, int pageNum)`:使用Criteria API实现分页。 2. `List<T> listByPage(Session session, String hql, Map, Object> params, int pageSize...
分页查询通常通过HQL(Hibernate Query Language)或者Criteria API来实现,通过设置适当的限制条件和偏移量来获取特定页的数据。 4. **Oracle数据库**:Oracle是一种强大的关系型数据库管理系统,广泛应用于企业级...
- 使用Hibernate进行数据访问:定义实体类,创建映射文件,并利用Hibernate的Criteria或HQL进行分页查询。 - DWR集成:配置DWR的`dwr.xml`文件,暴露Java方法供JavaScript调用,可能包括获取分页数据的接口。 - 页面...
在实现分页功能时,通常会使用Criteria或HQL(Hibernate Query Language)进行查询,并结合Criteria的setFirstResult和setMaxResults方法来实现分页。例如,setFirstResult代表从哪条记录开始,setMaxResults则是每...
在Hibernate中,可以使用`Criteria`或`Query`对象配合`setFirstResult`和`setMaxResults`方法来实现分页。在MyBatis中,可以使用`<select>`标签的`limit`和`offset`属性。 4. **Spring Data JPA的Pageable接口** ...
在分页时,Hibernate提供了`Criteria`、`HQL`(Hibernate Query Language)以及JPA的`Query`接口,通过设置`setFirstResult`和`setMaxResults`方法实现分页查询。 **SQL Server数据库** SQL Server是微软提供的一个...
在Hibernate中,可以通过HQL(Hibernate Query Language)或Criteria API来实现数据的分页查询。例如,使用LIMIT和OFFSET关键字进行分页,ORDER BY进行排序。 6. 安全性与权限控制:为了确保数据安全,系统应有相应...
在这个项目中,可能会使用Struts2的拦截器或自定义标签来实现前端页面的分页显示,同时在后台处理分页查询逻辑,如使用Spring Data JPA的Pageable接口或Hibernate的Criteria API。 集成这三个框架,可以实现松耦合...
5. **查询**:理解HQL和Criteria API的用法,以及如何进行复杂查询,如分页、排序、条件筛选。 6. **关联映射**:学习一对一、一对多、多对一、多对多的关联映射,以及级联操作。 7. **延迟加载和立即加载**:理解...
5. **整合Hibernate**:在数据库查询部分,使用Hibernate的`Criteria`、`HQL`或者`SQL`查询语句,配合`firstResult`和`maxResults`方法来实现分页查询。 6. **前端交互**:创建HTML表单或使用JavaScript处理用户...
在SSH项目中,可以使用Hibernate的Criteria API或者HQL(Hibernate Query Language)配合Limit Row Fetching来实现分页查询。前端通常会通过传递页码和每页显示条数的参数,由后台返回对应的分页数据。 6. **Mysql...
2. **创建DAO接口和实现**:在Hibernate中,你可以定义一个DAO接口,包含一个分页查询的方法。然后创建其实现,使用`Session`和`Criteria` API(或`Query` API)来执行分页查询。 3. **工厂类**:创建一个工厂类,...