`
lemo
  • 浏览: 91621 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jsp+struts1分页

阅读更多
后台数据库是mysql5.X,使用mysql的分页语句,如:select * from test limit 0,10;

Dao中分页取数据的方法:
public List<Users> getPage(int start,int pageRecord)
	{
		conn = DBUtil.getConn();
		PreparedStatement pstmt = null;
		ResultSet rs = null;
		List<Users> userList = new ArrayList<Users>();
		
		String sql = "select login_name,email,address,tel from users limit ?,?";
		try
		{
			pstmt = conn.prepareStatement(sql);
			pstmt.setInt(1, start);
			pstmt.setInt(2, pageRecord);
			rs = pstmt.executeQuery();
			Users user = null;
			while(rs.next())
			{
				user = new Users();
				user.setLoginName(rs.getString("login_name"));
				user.setEmail(rs.getString("email"));
				user.setAddress(rs.getString("address"));
				user.setTel(rs.getString("tel"));
				userList.add(user);
			}
		} catch (SQLException e)
		{
			
			e.printStackTrace();
		}
		finally
		{
			
			DBUtil.close(rs);
			DBUtil.close(pstmt);
			DBUtil.close(conn);
		}
		return userList;
	}


分页的action:
public class PageAction extends Action
{
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception
	{
		response.setContentType("text/html");
		response.setCharacterEncoding("utf-8");
		
		//当前页
		String currentPageStr = request.getParameter("pageNo");
		int currentPage=0;
		//每页显示的记录数
		int pageSize = 10;
		try
		{
			currentPage =Integer.parseInt(currentPageStr);
		}
		catch(NumberFormatException e)
		{
			currentPage = 1;
		}
		//在数据库中从第几条开始	
		int start = (currentPage -1) * 10;
		//在数据库中已分页的数据集合
		List<Users> list = DaoFactory.getUsersDaoInstance().getPage(start, pageSize);
		//所有记录的集合
		List<Users> allRecordList = DaoFactory.getUsersDaoInstance().getAll();
		//所有记录数
		int allRecord = allRecordList.size();
	
		//总页数
		int totalPage = allRecord % pageSize==0?allRecord/pageSize : allRecord/pageSize + 1;
		List<Users> l = new ArrayList<Users>();
		Users user = null;
		
		for(Users u : list)
		{
			user = new Users();
			
			user.setLoginName(u.getLoginName());
			user.setEmail(u.getEmail());
			user.setTel(u.getTel());
			user.setAddress(u.getAddress());
			
			l.add(user);
		}
		//总记录数
		request.getSession().setAttribute("allRecord", allRecord);
		//总页数
		request.getSession().setAttribute("totalPage", totalPage);
		//当前页数
		request.getSession().setAttribute("currentPage", currentPage);
		request.getSession().setAttribute("list", l);
		return mapping.findForward("success");
	}
}


前台页面代码:

  	<table align="center"  border="0">
  		 <tr>
		    <td width="76%">
		       <font size=4>总共${allRecord}条记录 - 当前页${currentPage }/总页数${totalPage }:</font>
		    </td>
		 </tr>
		 <tr>
		 	<c:if test="${currentPage<=1}">
		 		首页
		 	</c:if>
		 	<c:if test="${currentPage>1}">
		 		<a href="page.do?pageNo=1">首页</a>
		 	</c:if>
		 	<c:if test="${currentPage<totalPage}">
		 		<a href="page.do?pageNo=${currentPage +1}"+>下一页</a>
		 	</c:if>
		 	<c:if test="${currentPage>=totalPage}">
		 		下一页
		 	</c:if>
		 	<c:if test="${currentPage<=1}">
		 		上一页
		 	</c:if>
		 	<c:if test="${currentPage>1}">
		 		<a href="page.do?pageNo=${currentPage -1 }">上一页</a>
		 	</c:if>
		 	
		 	<c:if test="${currentPage>=totalPage}">
		 		尾页
		 	</c:if>
		 	<c:if test="${currentPage<totalPage}">
		 		<a href="page.do?pageNo=${totalPage}">尾页</a>
		 	</c:if>
		 </tr>
  	</table>
	<table border="2" align="center">
		
		<tr>
						<td>用户名</td>
			<td>email</td>
			<td>电话</td>
			<td>地址</td>
		</tr>
	  	<c:forEach items="${list}" var="l">
	  	<tr>
	  		
	  		<td>${l.loginName}</td>
	  		<td>${l.email }</td>
	  		<td>${l.tel }</td>
	  		<td>${l.address }</td>
	  	</tr>
	  	</c:forEach>
	</table>
分享到:
评论
1 楼 jasicca 2011-06-29  
u有苦有空[b][/b][u][/u]
引用

    [*]

    [*]

    [*]
[img][/img][color=yellow][/color][align=left][/align]

相关推荐

    jsp +struts 分页经典

    本项目名为“jsp +struts 分页经典”,显然是一个利用这两种技术实现的分页展示数据的案例。下面我们将深入探讨JSP和Struts框架,以及它们在分页、查询和数据操作中的应用。 首先,JSP是Java平台上的动态网页技术,...

    hibernate+struts2分页代码

    【hibernate+struts2分页代码】是关于如何在Java Web开发中结合Hibernate ORM框架和Struts2 MVC框架实现数据分页的功能。在Web应用程序中,分页是提高用户体验的重要手段,它允许用户逐步浏览大量数据,而无需一次性...

    eclipse+mysql+struts实现分页显示

    6. **编写JSP页面**:在JSP页面上,使用Struts2的标签库(如`s:iterator`和`s:url`)来遍历数据并构建分页链接。 7. **实现分页链接**:为每一页生成链接,通常会显示“上一页”、“下一页”和页码链接。点击这些...

    jsp+sqlserver分页

    总结,"jsp+sqlserver分页"项目涉及了数据库分页技术、Struts框架的使用、JavaBean组件以及JSP页面的构建。这些知识点对于理解Web开发中的数据交互和用户界面设计至关重要。通过这个项目,开发者可以学习到如何在...

    JavaWeb+JSP+Servlet+JDBC分页查询和查询后分页界面优化最终版

    1. **JDBC分页查询**:在处理大量数据时,一次性加载所有记录可能导致性能问题和用户体验下降。因此,我们通常使用JDBC实现分页查询,通过设置SQL的LIMIT或OFFSET子句(取决于数据库类型)来只获取当前页面的数据。...

    jsp+struts+spring+hibernate新闻系统

    【标题】"jsp+struts+spring+hibernate新闻系统"是一个基于Java技术栈的Web应用程序,它利用了SSH(Struts、Spring、Hibernate)框架的集成来构建一个功能完善的新闻发布与管理系统。SSH框架是Java领域中常用的MVC...

    Hibernate3+Spring2+Struts2分页显示方案

    传统的网页设计只在一个JSP或者ASP页面中书写所有关于数据库操作的代码,那样做分页可能简单一点,但当把网站分层开发后,分页就比较困难了,下面是我做Spring2+Hibernate3+Struts2项目时设计的分页代码,...

    Hibernate+jsp+Struts2开发的CRUD和分页代码

    【标题】:“Hibernate+jsp+Struts2开发的CRUD和分页代码”是指使用Java技术栈中的Hibernate对象关系映射框架、Struts2 MVC框架以及JSP(JavaServer Pages)进行基本的数据操作(创建、读取、更新、删除,简称CRUD)...

    JSP+Struts+HiberNate的博客系统

    开发者可以通过阅读源码,了解如何在实际项目中集成JSP、Struts和Hibernate,以及如何实现分页功能和数据库操作。 总之,这个"JSP+Struts+Hibernate"的博客系统展示了传统的Java Web开发方式,虽然现代Web开发已...

    hibernate+struts实现jsp增删改查分页

    hibernate+struts实现jsp增删改查分页! hibernate实现对数据库的操作,struts实现对表单的操作! 实现了分页功能! (注:本本项目中文会出现乱码,我还没有解决!附有数据库文件!)

    spring+hibernate+struts实现分页代码

    在分页场景下,Struts控制器接收用户的分页请求,调用服务层方法,然后将结果传递给视图层进行展示。 4. **分页实现**:在SSH框架中,分页通常通过以下步骤实现: - 设计一个Page对象,包含当前页、每页记录数、总...

    hibernate+struts实现jsp增删改以及分页功能

    hibernate+struts实现jsp增删改以及分页功能! hibernate做数据操作,struts处理表单。 实现了分布功能。附数据库! (注:如果出现乱码,大家配置一下tomcat的编码方式与数据库的编码方式就行了!)

    Spring+Hibernate+Struts实现分页

    5. **前端展示**:前端接收到分页数据后,使用JavaScript或者JSP标签库(如DisplayTag)渲染页面,展示分页内容。用户交互部分,如页码链接的激活状态和禁用状态,以及“下一页”、“上一页”按钮的状态,也需要在...

    基于JSP+Struts2+hibernate的个人博客系统

    **基于JSP+Struts2+Hibernate的个人博客系统** 在Web开发领域,构建一个功能完善的个人博客系统是一项常见的任务,而使用JSP、Struts2和Hibernate这三种技术的组合,可以创建出高效且易于维护的解决方案。下面将...

    基于JSP+Struts+JDBC的个人通讯录管理系统

    【基于JSP+Struts+JDBC的个人通讯录管理系统】是一个典型的Web应用程序,它结合了JavaServer Pages(JSP)、Struts框架和Java Database Connectivity(JDBC)技术,为用户提供了一个便捷、高效的个人通讯录管理平台...

    实现JSP+SERVLET+Hibernate基本分页

    1、添加struts2.1支持 2、修复没查到数据,组显示负数BUG V1.5版更新内容 1、修复HQL方式日期范围查询BUG 2、添加分组分页的功能 3、添加pageSize设置功能 V1.1版本更新内容 1、实现日期范围查询 V1.0版本 1、...

    spring2.5+struts2.0+hibernate3.0分页

    此外,还可以学习如何使用JSP或其他视图技术来呈现分页界面,以及如何处理用户交互事件,如点击“上一页”、“下一页”按钮。这样的实践将有助于提升Java Web开发技能,特别是对于使用SSH框架组合的开发者来说,这是...

    Struts+Hibernate实现分页

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

    jsp+struts+hibernate实现分面显示功能

    1. JSP页面:展示搜索结果和分面筛选选项。 2. Struts配置文件:定义Action类和请求映射。 3. Hibernate配置文件:配置数据库连接和实体映射。 4. Action类:处理用户请求,执行业务逻辑。 5. DAO(Data Access ...

Global site tag (gtag.js) - Google Analytics