- 浏览: 707634 次
- 来自: ...
文章分类
最新评论
-
ranguisheng:
可以加点注释,代码不便于阅读.
用java实现数据库连接池的一个简单示例 -
abcd880129:
这样写的话,还要用专门的下载工具,不然,只能下到一个为空的ex ...
ZK下载文件时,不在服务器生成文件直接下载 -
234369425:
同上,是20
java计算阶乘 -
CodeToMyLaw:
如果目录中含有中文呢?
[^\x00-\xff] 中文的 ...
js验证文件目录格式的正确性 -
yanzhoupuzhang:
加了,还是报那个错误!
org.apache.commons.dbcp.BasicDataSource的解决方法
转载:http://hi.baidu.com/javajavajava/blog
package com.hqh.page.util; import java.util.List; public class PageForm { private int currentPage = 1;// 当前页 private int prePage = 0;// 上一页 private int nextPage = 0;// 下一页 private int pageSize = 10;// 每页显示的行数 private int totalPage = 0;// 总页数 private int totalSize = 0;// 总纪录数 private List list; public PageForm() { } /** * * @param currentPage * 当前页 * @param pageSize * 每页显示的行数 */ public PageForm(int currentPage, int pageSize) { this.currentPage = currentPage; this.pageSize = pageSize; } public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { if (currentPage < 1) { this.currentPage = 1; } else { this.currentPage = currentPage; } } // 上一页 public int getPrePage() { if (currentPage > 1) { prePage = currentPage - 1; } else { prePage = 0; } return prePage; } // 下一页 public int getNextPage() { if (currentPage < totalPage) { nextPage = currentPage + 1; } else { nextPage = totalPage; } return nextPage; } public int getPageSize() { if (this.pageSize <= 0) { this.pageSize = 10; } return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getTotalPage() { if (getTotalSize() % pageSize == 0) {// 100%10->totalPage=10 this.totalPage = getTotalSize() / pageSize; } else { this.totalPage = getTotalSize() / pageSize + 1; } return this.totalPage; } public int getTotalSize() { return this.list.size(); } public List getList() { return list; } public void setList(List list) { this.list = list; } } 可重复利用的page.jsp <%@ page language="java" pageEncoding="GB18030"%> <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %> <bean:define id="pageForm" name="pageForm" type="com.hqh.page.util.PageForm"></bean:define> <bean:define id="actionPath" name="actionPath"></bean:define> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html:html lang="true"> <head> <html:base /> <title></title> </head> <body> <table> <tr> <td>共<bean:write name="pageForm" property="totalSize"/>条信息</td> <td> <logic:equal name="pageForm" value="1" property="currentPage">首页</logic:equal> <logic:notEqual name="pageForm" value="1" property="currentPage"> <a href="<%=actionPath %>?currentPage=1&pageSize=<bean:write name="pageForm" property="pageSize"/>">首页</a> </logic:notEqual> </td> <td> <logic:equal name="pageForm" property="currentPage" value="1">上一页</logic:equal> <logic:notEqual name="pageForm" property="currentPage" value="1"> <a href="<%=actionPath %>?currentPage=<bean:write name="pageForm" property="prePage"/>&pageSize=<bean:write name="pageForm" property="pageSize"/>">上一页</a> </logic:notEqual> </td> <td> <logic:equal name="pageForm" property="currentPage" value="${pageForm.totalPage}">下一页</logic:equal> <logic:notEqual name="pageForm" property="currentPage" value="${pageForm.totalPage}"> <a href="<%=actionPath %>?currentPage=<bean:write name="pageForm" property="nextPage"/>&pageSize=<bean:write name="pageForm" property="pageSize"/>">下一页</a> </logic:notEqual> </td> <td> <logic:equal name="pageForm" property="currentPage" value="${pageForm.totalPage}" >尾页</logic:equal> <logic:notEqual name="pageForm" property="currentPage" value="${pageForm.totalPage}" > <a href="<%=actionPath %>?currentPage=<bean:write name="pageForm" property="totalPage"/>&pageSize=<bean:write name="pageForm" property="pageSize"/>">尾页</a> </logic:notEqual> </td> <td> 跳转到第<select name='currentPage' onChange='javascript:location=this.options[this.selectedIndex].value;'> <% for (int i = 1; i <= pageForm.getTotalPage(); i++) { if (i == (pageForm.getCurrentPage())) {%> <option value="<%=actionPath %>?currentPage=<%=i%>&pageSize=<%=pageForm.getPageSize()%>+" selected><%=i %></option> <% } else {%> <option value="<%=actionPath %>?currentPage=<%=i%>&pageSize=<%=pageForm.getPageSize()%>"><%=i %></option> <%}}%> </select>页 每页行数 <select name='pageSize' onChange='javascript:location=this.options[this.selectedIndex].value;'> <% for (int i = 5; i <= 30; i=i+5) { if (i == pageForm.getPageSize()) {%> <option value="<%=actionPath %>?currentPage=1&pageSize=<%=i%>" selected><%=i%></option> <%} else {%> <option value="<%=actionPath %>?currentPage=1&pageSize=<%=i%>"><%=i%></option> <%}}%> </select> </td> <td>当前:<bean:write name="pageForm" property="currentPage"/>/<bean:write name="pageForm" property="totalPage"/>页</td> </tr> </table> </body> </html:html> action: /* * Generated by MyEclipse Struts * Template path: templates/java/JavaClass.vtl */ package com.hqh.page.struts.action; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; 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 com.hqh.page.bean.People; import com.hqh.page.dao.PeopleDAO; import com.hqh.page.util.PageForm; /** * MyEclipse Struts Creation date: 12-24-2007 * * XDoclet definition: * * @struts.action validate="true" */ public class PeopleAction2 extends Action { /* * Generated Methods */ private PeopleDAO peopleDAO = null; public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { peopleDAO = new PeopleDAO(); List<People> list = peopleDAO.getAllPeople(); PageForm pageForm = new PageForm(1, 10); pageForm.setList(list); String currentPage = request.getParameter("currentPage");// if (currentPage != null) { try { pageForm.setCurrentPage(Integer.parseInt(currentPage)); } catch (NumberFormatException e) { //如果从地址拦输入不合法的参数,就默认跳到第一页 pageForm.setCurrentPage(1); } } String pageSize = request.getParameter("pageSize");// 一页显示几行 if (pageSize != null) { try { pageForm.setPageSize(Integer.parseInt(pageSize)); } catch (NumberFormatException e) { //如果从地址拦输入不合法的参数,默认每页显示10行 pageForm.setPageSize(10); } } request.setAttribute("pageForm", pageForm);//分页中要用到 request.setAttribute("actionPath", "second.do");// 设置该action的请求路径,也就是该action在struts-config.xml中对应的path return mapping.findForward("peopleList");//此处跳到pagination2.jsp } } 测试页面(pagination2.jsp): <%@ page language="java" pageEncoding="GB18030"%> <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%> <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%> <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html:html lang="true"> <head> <html:base /> <title>分页</title> </head> <bean:define id="pageForm" name="pageForm" type="com.hqh.page.util.PageForm"></bean:define> <bean:define id="actionPath" name="actionPath"></bean:define> <body> 下面是从数据库中取到的数据: <table width="700" border="1" height="73"> <tbody> <tr> <td> 编号 </td> <td> 姓名 </td> <td> 性别 </td> <td> 年龄 </td> <td> 职位 </td> </tr> <logic:iterate id="people" name="pageForm" property="list" type="com.hqh.page.bean.People" offset="${(pageForm.currentPage-1)*(pageForm.pageSize)}" length="${pageForm.pageSize}"> <tr> <td> <bean:write name="people" property="id" /> </td> <td> <bean:write name="people" property="name" /> </td> <td> <bean:write name="people" property="sex" /> </td> <td> <bean:write name="people" property="age" /> </td> <td> <bean:write name="people" property="profession" /> </td> </tr> </logic:iterate> </tbody> </table> <jsp:include page="page.jsp"></jsp:include> </body> </html:html>
发表评论
-
浅析Struts1和Struts2的Action线程安全问题
2013-11-30 22:23 492【问题描述】最近公司安排我面试Java的FreshMan,面试 ... -
Struts 的动态复选框
2009-05-05 17:49 1304在用户界面设计中,复 ... -
struts-config.xml的配置
2009-04-30 11:34 1308在Struts应用启动时,会把Struts配置文件中的配置信息 ... -
Struts源码研究 - logic-Iterator标签篇
2009-02-25 23:13 1414转载:http://hi.baidu.com/ja ... -
Struts源码研究 - Bean-Message标签篇
2009-02-25 12:15 1470转载:http://hi.baidu.com/javajava ... -
struts中的DispatchAction、LookupDispatchAction、Mappin
2009-02-25 12:10 1552转载:http://hi.baidu.com/javajava ... -
LookupDispatchAction的使用
2009-02-25 12:07 1321转载:http://hi.baidu.com/javajava ... -
ForwardAction、IncludeAction、SwitchAction
2009-02-25 10:00 1343转载:http://hi.baidu.com/javajava ... -
org.apache.commons.dbcp.BasicDataSource的解决方法
2009-02-24 15:39 63858转载: http://hi.baidu.com/javajav ... -
一个简单的struts实现文件上传示例
2009-02-24 13:56 1448转载: http://hi.baidu.com/javajav ... -
struts 1 中服务器端限制文件上传的类型及扩展名
2009-02-24 12:53 3407转载: http://hi.baidu.com/javajav ... -
struts 1 中的文件上传 Action中的部分代码
2009-02-24 12:42 1525转载:http://hi.baidu.com/javajava ...
相关推荐
在Struts2中,增删改查(CRUD)操作和分页查询是其常用且重要的功能之一。 ### Struts2增删改查 在Struts2中实现增删改查主要通过JSP页面与Action类的交互完成。下面我们将根据提供的部分代码示例进行详细解析: ...
本资源详细介绍了如何在Struts2中自定义分页标签,使得开发过程更加便捷。 在Struts2中,分页通常涉及到以下几个关键步骤: 1. **创建Action类**:首先,你需要创建一个Action类,该类将处理用户的请求,包括获取...
7. **国际化与本地化**:为了提供多语言支持,分页中的文字(如“上一页”、“下一页”等)可以放在资源文件中,通过Struts的国际化特性来实现。 8. **性能优化**:在处理大量数据时,要考虑到性能问题。例如,使用...
Struts2分页源码技术是Web开发中一个重要的实践,尤其是在处理大数据量时,能够有效地提高用户体验,避免一次性加载过多数据导致页面响应慢。在本文中,我们将深入探讨Struts2分页技术的实现原理、应用方法以及与...
在Struts2中,实现分页通常涉及以下几个关键步骤: 1. **模型(Model)**:首先,我们需要一个实体类来存储待分页的数据,例如`User`。然后,创建一个`PageBean`类,它包含当前页数、总页数、每页记录数以及数据列表...
用Struts2+mysql实现的简单信息录入,分页查询
本实践项目旨在展示如何在Struts2中实现分页功能,适用于初学者学习和提升技能。 首先,我们来了解分页的基本原理。分页是将大量数据分成若干小部分,每次只加载一部分到页面上,用户可以通过导航按钮来浏览其他...
该文档详细描述了struts2版本的分页显示,值得一读
在分页中,这些方法需要接收分页参数并生成相应的SQL语句。 4. **结果映射(Result Mapping)**:Struts2配置文件中定义了Action执行后的结果,例如将页面重定向到某个JSP或Freemarker模板。在分页应用中,可能需要...
下面我们将深入探讨JSP和Struts框架,以及它们在分页、查询和数据操作中的应用。 首先,JSP是Java平台上的动态网页技术,它允许开发者将Java代码嵌入到HTML页面中,以实现服务器端的业务逻辑处理。JSP通过Java...
【hibernate+struts2分页代码】是关于如何在Java Web开发中结合Hibernate ORM框架和Struts2 MVC框架实现数据分页的功能。在Web应用程序中,分页是提高用户体验的重要手段,它允许用户逐步浏览大量数据,而无需一次性...
本实例中的“Struts 分页经典代码”就是一种实用的分页解决方案,旨在提供良好的用户体验。 分页技术主要涉及以下几个关键知识点: 1. **请求参数与模型绑定**:在Struts中,通常会通过Action类接收HTTP请求参数,...
下面是我用Struts2做的一个分页显示实例,基本的思路是:把数据库表中的每一行数据封装成一个对象,用一个返回类型为List的方法返回这些对象,接着在Struts2的action里面定义一个List属性,用这个List来接收从数据库...
MyBatis增 删 改 查 struts2分页
通过以上步骤,我们可以构建出一个完整的Struts分页系统。这个过程中,关键是理解Struts的MVC架构以及如何在各层之间传递和处理分页信息。熟练掌握分页技术不仅能够提升用户体验,也有助于优化应用的性能和可维护性...
总的来说,"Hibernate+Struts后台分页"涉及到了Java Web开发中的多个层次,包括前端请求处理、后台业务逻辑、数据持久化以及性能优化。理解和熟练掌握这些技术对于构建高性能、高可用性的Web应用至关重要。
在分页实现中,我们主要利用 `<s:bean>` 创建 `org.apache.struts2.util.Counter` 类型的 bean 来控制循环范围。 #### 三、`<s:bean>` 标签的基本用法 `<s:bean>` 标签的基本语法如下: ```xml ... ``` - *...
这是struts的一个练习 这是struts的一个练习这是struts的一个练习这是struts的一个练习
Struts2分页是Web开发中的一个重要概念,它主要用于处理大量数据时,避免一次性加载所有数据导致页面响应慢或者浏览器崩溃。在这个场景中,我们提到的是使用自定义标签实现类似于百度分页的效果,这是一种常见的用户...
Struts2实现分页功能,代码完整简洁易懂,可以直接拿去使用,欢迎拍砖