`
sunlifan05
  • 浏览: 71984 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

用struts+hibernate做了个分页

阅读更多

在daoImp中写入此两个方法方法

//用与获取一个表中总的行数

public int countRow()
 {
  Session s=getSession();
  HibernateUtil.beginTransaction();
  Query query=s.createSQLQuery("select count(*) from Category");
  int countRow=Integer.parseInt(query.uniqueResult().toString());
  HibernateUtil.commitTransaction();
  HibernateUtil.closeSession();
  
  return countRow;
 }

//获取hibernate中第offset行的到第index个值到list中

 public List getListCategorys(int offset,int index){
  Session s=getSession();
  HibernateUtil.beginTransaction();
  Query query=s.createQuery("from Category");
  query.setFirstResult(i);
  query.setMaxResults(j);
  List list=query.list();
  HibernateUtil.commitTransaction();
  HibernateUtil.closeSession();
  return list;
 }

//把list中的值放入VO中,再把VO对象放入categorylist

package org.zjut.service;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import org.zjut.DAOFactory.DAOFactory;
import org.zjut.GetSession.GetSession;
import org.zjut.PO.Category;
import org.zjut.PO.base.BaseCategory;

public class DataSources extends GetSession{
 public List getListCategory(int offset,int index)
 {
  List list=DAOFactory.getIntance().createCategoryDAO().getListCategorys(offset,indexj);
  List<BaseCategory> categorylist=new ArrayList<BaseCategory>();
  Iterator it=list.iterator();
  Category category;
  
  while(it.hasNext())
  {
   BaseCategory categoryVO=new Category();
   category=(Category)it.next();
   Long id=category.getId();
   String name=category.getName();
   
   categoryVO.setId(id);
   categoryVO.setName(name);
   categorylist.add(categoryVO);
   
   
  }
  return categorylist;
 }
}

//用于分页的action
package org.zjut.actions;

import java.io.IOException;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import org.zjut.DAOFactory.DAOFactory;
import org.zjut.service.DataSources;

 

public class ListCategoryAction extends Action {

 public ActionForward execute(ActionMapping mapping,
         ActionForm form,
         HttpServletRequest request,
         HttpServletResponse response)
         throws IOException, ServletException {
  request.setAttribute("pageno",null);
  request.setAttribute("totalpage", null);
  int totalno=DAOFactory.getIntance().createCategoryDAO().countRow();  
  int pageno=0;int pageSize=10;int i=0;int j=pageSize;
  int totalpage=(totalno%pageSize)==0?(totalno/pageSize):(totalno/pageSize+1);    
  if(totalno<=pageSize)
  {
   i=0;j=totalno;pageno=1;
   request.setAttribute("pageno", pageno);
   request.setAttribute("totalpage", totalpage);
  }
  else{
   String strno=(String)request.getParameter("pageno");  
   if(strno==null){
    pageno=1;i=0;j=pageSize;    
    request.setAttribute("pageno", pageno);
    request.setAttribute("totalpage", totalpage);
   }else{    
    pageno=Integer.parseInt(strno);
    if(pageno<1)
    {
     pageno=1;i=0;j=pageSize;     
     request.setAttribute("pageno", pageno);
     request.setAttribute("totalpage", totalpage);
    }
    else{
     i=(pageno-1)*pageSize;j=pageSize;
     request.setAttribute("pageno", pageno);
     request.setAttribute("totalpage", totalpage);
    }    
   }   
  }  
  List categorylist=new DataSources().getListCategory(offset,index);   
  request.setAttribute("list",categorylist); 
  String target = "display";
    
  return mapping.findForward(target);
 }
 

}

//通过action返回的pageno和allpage分页

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>

<style>
#idDIV{width:300px;height:120px;background-color:#000000;padding:4px;font-family:verdana,tahoma;}
#idDIV td{background-color:#FFD700;}
#idCodeDiv{width:300px;padding:4px;font-family:verdana,tahoma;margin:12px 0px 0px 0px;background-color:#EEEEEE;font-weight:bold;}
</style>

<html:html>
<head>
<title> insreat title here </title>
</head>
<body><div align="center" style="background-color:blue;">
<html:errors/>
<c:set var="pageno" value="${pageno}"></c:set>
<c:set var="totalpage" value="${totalpage}"></c:set>

<bean:message key="number"/>   <bean:message key="category"/>   <bean:message key="operat"/>
<br><%int i=1; %>
<c:forEach var="cate" items="${list}">
<c:out value="<%=i++ %>"></c:out><c:out value="${cate.name}"></c:out><bean:message key="editor"/><bean:message key="delete"/>
<BR>
</c:forEach>

<c:if test="${pageno ne 1}"><a href='<c:url value="/listCategoryAction.do"><c:param name="pageno" value="1"/></c:url>'><bean:message key="first"/></a></c:if>

<c:if test="${pageno gt 1}"><a href='<c:url value="/listCategoryAction.do"><c:param name="pageno" value="${pageno-1}"/></c:url>'><bean:message key="Previous"/></a></c:if>

<c:if test="${pageno lt totalpage}"><a href='<c:url value="/listCategoryAction.do"><c:param name="pageno" value="${pageno+1}"/></c:url>'><bean:message key="next"/></a></c:if>

<c:if test="${pageno ne totalpage}"><a href='<c:url value="/listCategoryAction.do"><c:param name="pageno" value="${totalpage}"/></c:url>'><bean:message key="last"/></a></c:if>
</div></body>
</html:html>

分享到:
评论

相关推荐

    struts+hibernate做的分页显示

    在这个项目中,"struts+hibernate做的分页显示"主要是利用这两者来实现数据的分页展示,提升用户体验,降低服务器压力。 首先,Struts是一个基于MVC设计模式的Java Web框架,它简化了开发过程,提供了处理HTTP请求...

    用Struts+Hibernate做的分页

    通过这个项目,开发者可以学习到如何在Struts和Hibernate的集成环境下实现分页功能,理解MVC架构下各层的职责,以及如何使用Hibernate进行数据库操作。此外,还能了解到如何在前端展示分页信息,提高用户体验。这是...

    STRUTS2+HIBERNATE详细的分页实现代码详细的分页实现代码

    下面是一个简化的示例代码片段,展示了如何在Struts2和Hibernate中实现分页功能: ```java // PageTool类定义 public class PageTool { private int pageNum; // 当前页码 private int pageSize; // 每页显示记录...

    Struts+Hibernate实现分页

    本篇将介绍如何使用Struts和Hibernate框架来实现Web应用中的分页功能。 首先,Struts是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它负责处理用户请求并控制应用程序的流程。而Hibernate则是一...

    Struts + Hibernate 实现简单分页功能

    本篇将详细讲解如何利用Struts和Hibernate来实现一个简单的分页功能。 首先,我们需要理解分页的基本原理。分页是为了提高用户体验,避免一次性加载大量数据导致页面加载慢或内存压力过大。在Web应用中,我们通常将...

    struts+hibernate做的分页

    在本项目中,"struts+hibernate做的分页"指的是使用这两个框架实现数据的分页展示。 分页在大型Web应用中至关重要,因为它能提高用户体验,避免一次性加载大量数据导致页面响应慢或浏览器崩溃。在Struts中,分页...

    struts+hibernate的jsp分页实例

    本人用struts+hibernate写的分页,有详细的注解,方便新手学习,在jsp中实现首页下一页上一页末页功能.index.jsp控制showlist.jsp页面中每页显示的信息条数,本实例在xp+tomcat5.5验证通过.数据库使用的sql2000中的pubs...

    struts+hibernate+spring集成实现分页

    在分页时,我们可以利用HQL(Hibernate查询语言)或者Criteria API来编写分页查询,这两个工具能够直接与数据库进行交互,获取指定范围的数据。此外,Hibernate还提供了ScrollableResults接口,支持高效的分页浏览,...

    Struts+hibernate经典的分页代码

    在这个"Struts+Hibernate经典的分页代码"示例中,我们可以学习如何在基于Struts的Web应用中集成Hibernate,以实现数据的分页显示。分页是用户界面设计中一个常见的需求,特别是在处理大量数据时,它能提高用户体验,...

    struts+hibernate+sql server2005分页的小项目

    本项目以"Struts+Hibernate+SQL Server 2005"的技术栈实现了一个简单的分页小项目,下面我们将详细探讨这个项目中的关键技术点。 **1. Struts框架** Struts是Apache组织下的一个开源MVC框架,主要用于构建Java Web...

    Struts2+HIBERNATE实现分页(完整讲解)

    在这个教程中,我们将探讨如何利用Struts2和Hibernate实现分页功能。 **1. 数据库设计** 首先,我们需要一个简单的数据库表,如Tb_soft中的software表,包含一些基本字段如Tsoftware, fSoftname, fListImage等。...

    struts+hibernate实例(分页)

    总的来说,"struts+hibernate实例(分页)"是一个实用的学习资源,可以帮助开发者掌握如何在Java Web应用中整合Struts和Hibernate,实现高效、便捷的数据分页功能。通过学习和实践这个实例,开发者不仅可以提升技术...

    struts+spring+hibernate 分页

    总的来说,Struts+Spring+Hibernate 分页涉及到前端交互、后端服务、数据库查询等多个环节,需要综合运用这三个框架的能力。理解并熟练掌握这一过程,对于开发高效、可维护的Web应用具有重要意义。

    spring+struts+hibernate写的分页代码

    在本示例中,"spring+struts+hibernate写的分页代码" 提供了一个使用这三大流行Java框架实现分页功能的实例。下面将详细解释这三个框架以及它们如何协同工作来实现分页。 1. **Spring框架**:Spring 是一个全面的...

    Struts + Hibernate v1.0 分页源码

    通过深入学习这个分页示例,你不仅可以掌握Struts和Hibernate的结合使用,还能了解到分页在实际项目中的实现方式,这将对你的Java Web开发技能有很大的提升。同时,这也是一个很好的实践机会,帮助你理解MVC模式以及...

    struts+hibernate的通用分页程序

    通过上述分析,我们可以看出,Struts + Hibernate 实现的通用分页程序主要涉及到了以下几个关键点:查询设置、SQL优化、自定义 SQL、分页逻辑处理以及 DAO 层的设计。这些技术点共同构成了一个完整的分页解决方案。...

    struts+hibernate+display分页实例

    Struts、Hibernate和DisplayTag是Java Web开发中的三个重要组件,它们共同构成了一个强大的MVC(Model-View-Controller)架构。在这个实例中,我们将会深入探讨如何将它们整合在一起,实现一个具备分页功能的Web应用...

    Struts2 + Spring2 + Hibernate3经典分页(包含java及jsp源码)

    通过上述介绍可以看出,在Struts2、Spring2和Hibernate3集成环境中实现经典的分页功能涉及到多个层面的技术细节。开发者需要综合考虑框架的特性、数据库的操作方式以及前端展示的需求,才能设计出高效稳定的分页方案...

    Struts + Hibernate v1.1 分页源码

    总结来说,这个"Struts+Hibernate 分页源码"项目涵盖了以下几个核心知识点: 1. Struts框架的MVC设计模式,包括Action和ActionForm的使用。 2. Hibernate的数据库操作,如Criteria查询和分页实现。 3. 使用...

    spring+struts2+hibernate整合实现分页

    在这个项目中,“spring+struts2+hibernate整合实现分页”是一个基础教程,旨在帮助初学者理解如何在SSH框架下实现数据的分页展示。下面将详细讲解这个主题中的关键知识点。 1. **Spring框架**:Spring是Java应用的...

Global site tag (gtag.js) - Google Analytics