- 浏览: 286790 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
cheetah_ysc:
不错不错,我喜欢!
Java固定时间间隔执行 -
voyage_mh:
阿选百度竟然一下可以吧你百度出来
使用DWR注解Annotation
基于hibernateTemplate的三个分页控制方法
package com.lbx.chat.paging;
import java.sql.SQLException;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.HibernateTemplate;
/**
* 基于hibernateTemplate的三个分页控制方法
* @author Administrator
*
*/
public class PageDaoHibernate {
private HibernateTemplate hibernateTemplate;
/**
* 使用HQL语句进行分页查询操作
* offset 第一条记录的索引
* pageSize 每页需要显示的记录数
* @return 当前页的所有记录
*/
public List findByPage(final String hql, final int offset, final int pageSize){
List list = hibernateTemplate.executeFind(new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException,
SQLException {
List result = session.createQuery(hql).setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
}
});
return list;
}
/**
* 使用HQL语句进行分页查询操作
* value 如果HQL有一个参数需要传人,则value就是传人的参数
* offset 第一条记录的索引
* pageSize 每页需要显示的记录数
* @return 当前页的所有记录
*/
public List findByPage(final String hql, final Object value, final int offset, final int pageSize){
//System.out.println("PageDaoHibernate.findByPage()");
List list = hibernateTemplate.executeFind(new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException,
SQLException {
List result = session.createQuery(hql).setFirstResult(offset)
.setParameter(0, value)
.setMaxResults(pageSize)
.list();
return result;
}
});
return list;
}
/**
* 使用HQL语句进行分页查询操作
* values 如果HQL有多个参数需要传人,则values就是传人的参数数组
* offset 第一条记录的索引
* pageSize 每页需要显示的记录数
* @return 当前页的所有记录
*/
public List findByPage(final String hql, final Object[] values, final int offset, final int pageSize){
List list = hibernateTemplate.executeFind(new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException,
SQLException {
Query query = session.createQuery(hql);
for (int i = 0; i < values.length; i++) {
query.setParameter(i, values[i]);
}
List result = query.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
}
});
return list;
}
public HibernateTemplate getHibernateTemplate() {
return hibernateTemplate;
}
public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
this.hibernateTemplate = hibernateTemplate;
}
}
发表评论
-
Hibernate查询优化
2010-12-24 14:12 1436查询性能优化 Hibernate可从下面几个方面来优化 ... -
Hibernate检索策略
2010-12-22 19:03 966Hibernate检索策略简介 类级别检索策略:Se ... -
hibernate中ID生成策越
2010-12-19 17:39 601Hibernate中的内置标识符的生成器的用法 ... -
基于HibernateDaoSupport的分页
2010-12-03 12:53 2949基于HibernateDaoSupport的三个分页控制方法 ... -
Hibernate 事务的并发处理
2010-11-16 17:25 1296事务定义:数据库事务是指由一个或多个SQL语句组成的工作单元, ... -
Hibernate 缓存问题
2010-11-16 15:01 1128什么是缓存?? 答:缓存就是在内存中开辟一块空间, ... -
Hibernate 1+N 问题
2010-11-15 21:45 38321+N问题的描述:举例,多个主题(Topic)属于一个帖子( ... -
通过Filter过滤器来实现OSIV模式
2010-11-13 14:44 2699使用Servlet过滤器来实现OSIV模式(Open Sess ... -
Hibernate多对多双向关联(多对多都很少用,双向都少用)
2010-10-26 16:11 983Order类 import java.io.Seria ... -
Hibernate多对多单向关联
2010-10-26 16:05 886Order类定义一个 Set products = new H ... -
Hibernate多对一单向关联
2010-10-26 15:55 1028在多方关联一方 Product(多方)(部分代码) pub ... -
Hibernate一对多单向关联
2010-10-26 15:50 943Category类(一方) import java.util ... -
Hibernate双向映射组件
2010-10-26 15:44 949和单向的类似,只不过多加了一个关联User关联Frofile, ... -
Hibernate组件单向映射
2010-10-26 15:37 462User类中有一个属性 private Profile pro ... -
Hibernate集合映射Set和Map
2010-10-26 15:32 944Set和Map基本和List一样 先看Set 只需要将L ... -
Hibernate集合映射
2010-10-26 15:28 818以User类为例: 在User类中定义一个List集合用于 ... -
Hibernate联合主键
2010-10-26 15:19 1062User类 package com.lbx.mo ... -
Hibernate 原理
2010-10-24 11:37 12081.Hibernate 的初始化. 读取Hibernat ... -
SessionFactory的一个简单的工具类
2010-10-21 12:10 978SessionFactory是一个重量级的类,不可以多new, ... -
使用xml的格式来配置Hibernate
2010-10-21 12:05 942一个简单的User类 相应的xml文件User.hbm ...
相关推荐
总的来说,"S2SH购物车+HibernateTemplate分页"项目是一个综合性的学习资源,涵盖了Java Web开发中的关键技术和实践,对于理解SSH框架的整合和实际应用具有很高的参考价值。通过这个项目,开发者可以深入理解如何在...
在分页中,Hibernate可以通过HQL(Hibernate Query Language)或者 Criteria API 来实现对数据库的查询,同时提供Limit和Offset方法来实现数据的分页。 Spring框架作为核心的容器,它可以管理和装配这些框架的组件...
总的来说,通过Spring、Struts和Hibernate的集成,我们可以构建出一个强大的Web应用框架,其中分页功能的实现主要依赖于Spring管理的SessionFactory、Struts的Action和Spring的IoC容器,以及自定义的PageUtil和Page...
在Spring容器中,对象的属性通常是通过setter方法注入的。如果出现“no setter found for property”的错误,那可能是因为缺少对应的setter方法,或者在配置文件中误将属性名写错,导致Spring无法完成依赖注入。 ...
在基于Java的Web开发中,Hibernate、Spring和Struts2的整合是常见的技术栈,用于构建高效、可维护的企业级应用程序。在这个特定的分页显示方案中,开发者使用了这三种技术来解决在大型数据集展示时的分页问题。 1. ...
标题中的“Hibernate Struts2 Spring 分页 国际化 表单验证 退出 最终修改版”揭示了一个基于Java EE的Web应用项目,这个项目整合了三个关键的技术框架:Hibernate、Struts2和Spring,同时涵盖了分页、国际化、表单...
Spring提供了org.springframework.orm.hibernate3.HibernateTemplate类和org.springframework.orm.hibernate3.HibernateCallback接口来方便和Hibernate整合。 HibernateTemplate类封装了Hibernate的主要类,它提供了...
4.11.2 使用基于Java类的配置信息启动Spring容器 4.12 不同配置方式比较 4.13 小结 第5章 Spring容器高级主题 5.1 Spring容器技术内幕 5.1.1 内部工作机制 5.1.2 BeanDefinition 5.1.3 InstantiationStrategy 5.1.4 ...
- `setSessionFactory`方法用于接收Spring IoC容器的依赖注入,它可以接受配置在Spring中的`SessionFactory`实例。 - `getHibernateTemplate`方法则根据`SessionFactory`生成`HibernateTemplate`,从而完成数据库...
- **使用HibernateTemplate进行分页**:支持高效的分页查询。 #### 六、Spring事务处理 **7.1 事务概念** Spring提供了两种类型的事务管理: - **编程序事务管理**:通过编程的方式来管理事务。 - **声明式事务...
4.11.2 使用基于Java类的配置信息启动Spring容器 4.12 不同配置方式比较 4.13 小结 第5章 Spring容器高级主题 5.1 Spring容器技术内幕 5.1.1 内部工作机制 5.1.2 BeanDefinition 5.1.3 InstantiationStrategy 5.1.4 ...
在分页实现中,Spring可以管理Struts中的Action和Hibernate中的SessionFactory,使得各组件之间的耦合度降低。此外,Spring的Transaction Management可以处理分页查询过程中的事务,确保数据的一致性。 4. **分页...
Struts、Hibernate和Spring是Java开发中非常流行的三个框架,它们在Web开发中扮演着重要的角色,通常被称为SSH框架。Struts主要负责MVC模式中的视图和控制器部分,Hibernate是对象关系映射(ORM)工具,用于处理Java...
4. **创建分页信息容器**:在业务逻辑层,我们需要创建一个`PageBean`或类似的对象,用于存储分页的相关信息,如当前页、总页数、每页记录数等。 ```java public class PageBean<T> { private int pageNo; ...
3. **Spring**:Spring框架提供了依赖注入,使得对象之间的依赖关系在编译时并不固定,而是由Spring容器在运行时动态注入。在SSH集成中,Spring管理Struts2的Action和Hibernate的SessionFactory,通过配置bean来实例...
【Spring 整合 Hibernate】是Java企业级应用中常见的技术结合,它允许开发者利用Spring的IoC容器管理和事务处理能力,结合Hibernate的ORM(对象关系映射)功能,以提高开发效率和应用性能。SSH(Struts、Spring、...
在这个项目中,Spring作为整个应用的容器,管理了Struts2和Hibernate的实例,同时可能还用于事务管理,确保数据的一致性。 4. **排序与搜索**:在描述中提到了排序和搜索功能,这通常涉及到SQL查询的ORDER BY子句和...
3. Spring与Hibernate整合:通过HibernateTemplate或SessionFactoryBean,Spring可以管理Hibernate的Session,提供事务管理。 面试题通常会深入探究这些框架的配置、使用、性能优化等方面,以及它们如何协同工作以...
Struts 提供了 MVC(模型-视图-控制器)设计模式,Spring 作为整体的框架容器,管理应用组件和事务处理,而 Hibernate 则是 ORM(对象关系映射)工具,负责数据库操作。 在 JavaEE 应用中,使用 SSH 框架进行源代码...
Spring是一个全方位的应用开发框架,它提供了一个容器来管理对象的生命周期和依赖关系,同时提供了AOP(面向切面编程)功能,用于处理事务、日志等通用任务。在SSH整合中,Spring作为核心,负责控制反转(IOC)和...