1、分页的实体Bean
@Repository
public class PageList {
@Autowired//注释调用service
private ToolService toolservice;
@Autowired
private Fenye fenye;
private int nowpage = 1;//当前页
private int countpage = 1;//总页数
private int countList = 1;//总记录数
private int begin = 0;//开始条数
private int pageNum = 4;//每一页显示条数
public List getpageList(String hql,String nowpage){
int n = 1;
try{
n = Integer.parseInt(nowpage);
}catch(Exception e){
n = 1;
}
int listnum = this.toolservice.getPageNum(hql);
this.setNowpage(n);
this.setCountList(listnum);
this.returnNowpage();
List list = this.toolservice.getPageList(hql, this.begin, this.pageNum);
return list;
}
/**
* 得到返回的页数
*/
public void returnNowpage(){
if(this.nowpage >= this.countpage){
if(this.countpage> 1){
this.begin = (this.countpage - 1) * this.pageNum;
this.nowpage = this.countpage;
} else {
this.begin = 0;
this.nowpage = 1;
}
} else {
if (this.nowpage <= 1) {
this.begin = 0;
this.nowpage = 1;
} else {
this.begin = (this.nowpage - 1) * this.pageNum;
}
}
}
public ToolService getToolservice() {
return toolservice;
}
public void setToolservice(ToolService toolservice) {
this.toolservice = toolservice;
}
public int getNowpage() {
return nowpage;
}
public void setNowpage(int nowpage) {
this.nowpage = nowpage;
}
public Fenye getFenye() {
return fenye;
}
public void setFenye(Fenye fenye) {
this.fenye = fenye;
}
public int getCountpage() {
return countpage;
}
public void setCountpage(int countpage) {
this.countpage = countpage;
}
public int getCountList() {
return countList;
}
public void setCountList(int countList) {
this.countList = countList;
this.countpage = (this.countList -1)/this.pageNum + 1;//计算总页数
}
public int getBegin() {
return begin;
}
public void setBegin(int begin) {
this.begin = begin;
}
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
}
2、DAO层的方法
A:
public List findTermEmploy(String hql, int begin,int last) {
Session session = this.hibernatetemplate.getSessionFactory().openSession();
List list1 = session.createQuery(hql).setFirstResult(begin).setMaxResults(last).list();
List list = new ArrayList();
int sessionclose = 0;//控制session是否关闭
for(int i=0;i<list1.size();i++){
Employee employee = (Employee) list1.get(i);
list.add(list1.get(i));
sessionclose++;
}
if(sessionclose >= list1.size()){
session.close();
}
return list;
}
B:
public List findByPage(final String hql, final Object value,final int offset, final int pageSize) {
List list=hibernateTemplate
.executeFind(new HibernateCallback()
{
public Object doInHibernate(org.hibernate.Session session)
throws HibernateException, SQLException {
List result=session.createQuery(hql)
.setParameter(0, value)
.setFirstResult(offset)
.setMaxResults(pageSize)
.list();
return result;
}
});
return list;
}
3、在Action里面用注释的方式注入分页Bean
调用它的的getpageList(String hql,String nowpage)方法就好了,传入HQL语句和要寻找的页码
4、在JSP页面里,
上一页:nowpage =${nowpage + 1}
下一页:nowpage =${nowpage - 1}
首 页:nowpage = 1;
尾 页:nowpage = pageCount;//总页数
分享到:
相关推荐
SSH分页 分页 通用分页 struts2分页
2. **条件查询**:SSH分页插件支持条件查询,允许开发者根据用户输入的过滤条件来定制查询。这可以通过动态构造HQL或SQL语句,或者使用Criteria API实现。 3. **结果处理**:插件处理完数据库查询后,会提供一个...
好强大的ssh分页,封装的很好,适合初学者研究下,可以更快帮助初学者掌握分页机制,学起来不是很容易,但是当你学会了就豁然开朗,其他的分页直接可以藐视了,哈。。。我就是这样学过来的 有相关教程:...
SSH分页则是指在使用这三个框架开发应用程序时,实现数据展示分页的一种技术手段。 **Struts** 是一个基于MVC设计模式的Web应用框架,主要用于控制视图与模型之间的交互。它提供了一种组织应用逻辑的方式,使得...
总结来说,SSH分页的实现涉及Struts2 Action配置、Service层的分页查询、DAO层的数据库操作、Model对象的封装以及JSP页面的展示。通过合理的设计和编程,可以构建出高效、易于维护的分页功能。在实际开发中,还需要...
SSH(Struts2 + Spring + Hibernate)是一种经典的Java Web开发框架,它整合了Struts的MVC模式、Spring的依赖注入以及Hibernate的对象关系映射,为开发者提供了强大的开发工具。在SSH框架中实现分页功能是一项常见的...
SSH分页技术是Java Web开发中一种常见的数据处理方法,主要应用于大数据量的展示场景,如用户在浏览商品列表或论坛帖子时,通过分页来避免一次性加载所有数据导致的性能问题和用户体验下降。SSH指的是Spring、Struts...
在本实例中,我们将深入探讨SSH框架下的分页功能实现。 首先,让我们从Struts开始,它是SSH中的用户界面层,负责处理HTTP请求并返回相应的视图。在Struts中,我们可以创建一个Action类来处理分页请求。这个Action类...
SSH(Struts2 + Spring + Hibernate)是一种经典的Java Web开发框架,它提供了强大的MVC(模型-视图-控制器)架构支持。在处理大量数据时,分页是必不可少的功能,可以提高用户体验并优化服务器性能。这里提到的是一...
在这个“很好的SSH分页小例子”中,我们将深入探讨SSH框架如何实现数据的分页显示,这对于处理大数据量的展示至关重要。 首先,让我们了解SSH框架的各自角色: 1. **Struts2**:这是一个MVC(Model-View-...
在这个"SSH+Mysql无刷新分页实例"中,我们将探讨如何利用SSH框架与MySQL数据库实现网页的无刷新分页功能,从而提高用户体验。 首先,SSH框架中的Spring负责控制层,它提供依赖注入(Dependency Injection,DI)和...
在这个“ssh2分页查询”项目中,我们将探讨如何在SSH2框架下实现数据库的分页查询功能,这对于处理大量数据的Web应用来说至关重要。 首先,我们需要了解分页查询的基本概念。分页查询是指在从数据库中检索数据时,...
SSH(Struts2 + Spring + Hibernate)是一个经典的Java Web开发框架,它整合了三大主流开源框架,用于构建高效、可维护性高的企业级应用程序。在这个"SSH实现分页实例"中,我们将深入探讨如何在SSH框架下实现数据的...
"SSH分页查询方法"是指在使用Struts2、Hibernate和Spring三大Java开发框架集成开发时实现的分页功能。 首先,Struts2是一个MVC(Model-View-Controller)框架,它负责处理用户请求并将其转发到相应的控制器,进而...
在这个场景中,"SSH分页组件"指的是在SSH框架下实现数据分页功能的组件。 分页是Web应用中常见的需求,特别是在处理大数据量时,为了提高用户体验和系统性能,需要将结果集分割成多个小部分(页)进行显示。SSH分页...
SSH分页技术是Java开发中一个非常实用的功能,尤其在处理大数据量的Web应用时,它能够有效地提高用户体验,避免一次性加载过多数据导致的性能问题。SSH是指Spring、Struts和Hibernate这三大开源框架的组合,它们在...
总结起来,这个压缩包提供的SSH分页实例数据库MySQL连接,旨在帮助初学者掌握SSH框架在实际项目中的应用,尤其是如何利用SSH实现数据的CRUD操作和分页功能,对于提升Java Web开发技能具有很大价值。通过实践这个实例...
这个一个关于String+Spring+Hibernate框架,可以分页显示的实例代码.
SSH(Struts2 + Spring + Hibernate)是一种经典的Java Web开发框架,它提供了强大的MVC(Model-View-Controller)架构支持。在这个特定的上下文中,"ssh 分页组件"指的是在SSH框架中实现数据分页的功能。数据分页在...
在这个名为"ssh.zip_SSH 数据分页_ssh分页实现"的压缩包中,我们可以看到一个关键的实践案例——如何在SSH框架下实现数据分页功能。数据分页在Web应用中极为重要,因为它能够帮助用户更有效地浏览大量信息,提高用户...