- 浏览: 232486 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
xiangcaotiank:
附件已经在服务器上的时候该如何处理,比如,草稿箱里已经有了两个 ...
JavaMail发邮件【可带附件】 -
xiaoyaolong:
代码规范也写的非常好,值得学习!
JavaMail发邮件【可带附件】 -
xiaoyaolong:
效果不错噢,非常感谢!
JavaMail发邮件【可带附件】 -
argel_lj:
单机这样连好像也不行啊
Oracle监听找不到解决方法 -
xiangxuehai_jiaer:
...
Java解析XML四种方法
首先创建PageBean
package com.pjb.sys.tag; public class PageBean { private int totalResults; // 总记录数 public static int pageSize = 5; // 每页显示的记录数 private int currentPage = 1; // 当前页号 public PageBean(int totalResults, int pageSize) { super(); this.totalResults = totalResults; PageBean.pageSize = pageSize; } public PageBean() { } /** * * @return 得到总记录数 */ public int getTotalResults() { return totalResults; } public void setTotalResults(int totalResults) { this.totalResults = totalResults; } public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { if (this.currentPage < 1) { this.currentPage = 1; } if (this.currentPage > this.totalResults) { this.currentPage = this.totalResults; } this.currentPage = currentPage; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { PageBean.pageSize = pageSize; } public int getTotalPageSize() { return (int) Math.ceil(this.totalResults / (double) PageBean.pageSize); } /** * 是否有下一页 * * @return */ public boolean IsNextPage() { if (this.currentPage < this.getTotalPageSize()) { return true; } return false; } /** * 是否有上一页 */ public boolean IsUpPage() { if (this.currentPage > 1) { return true; } return false; } /** * 从哪一条开始取 */ public int getStartResult() { return (this.currentPage - 1) * PageBean.pageSize; } }
标签PageTag类
package com.pjb.sys.tag; import java.io.IOException; import javax.servlet.http.HttpServletRequest; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; import javax.servlet.jsp.tagext.TagSupport; @SuppressWarnings("serial") public class PageTag extends TagSupport { // 请求的action private String action; public String getAction() { return action; } public void setAction(String action) { this.action = action; } @Override public int doEndTag() throws JspException { JspWriter out = pageContext.getOut(); HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); PageBean pageBean = (PageBean) request.getAttribute("pageBean"); try { out.println("<table>"); out.println("<tr>"); out.println("<td>"); out.println("第" + pageBean.getCurrentPage() + "页"); out.println("共" + pageBean.getTotalPageSize() + "页" + "共" + pageBean.getTotalResults() + "记录"); out.println("<a href=\"" + request.getContextPath() + action + "1\">首页</a>"); out.println("<a href=\"" + request.getContextPath() + action + pageBean.getTotalPageSize() + "\">尾页</a>"); if (pageBean.IsUpPage()) { out.println("<a href=\"" + request.getContextPath() + action + (pageBean.getCurrentPage() - 1) + "\">上页</a>"); } else { out.println("上页"); } if (pageBean.IsNextPage()) { out.println("<a href=\"" + request.getContextPath() + action + (pageBean.getCurrentPage() + 1) + "\">下页</a>"); } else { out.println("下页"); } out.println("<select onchange=\"self.location='" + request.getContextPath() + action + "'+this.options[this.selectedIndex].value\">"); for (int i = 1; i <= pageBean.getTotalPageSize(); i++) { if (pageBean.getCurrentPage() == i) { out.println("<option value=" + i + " selected>" + i + "</option>"); } else { out.println("<option value=" + i + ">" + i + "</option>"); } } out.println("</select>"); out.println("</td>"); out.println("</tr>"); out.println("</table>"); } catch (IOException e) { e.printStackTrace(); } return EVAL_PAGE; } }
创建mytag.tld文件
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "web-jsptaglibrary_1_2.dtd" > <taglib> <tlib-version>1.0</tlib-version> <jsp-version>1.2</jsp-version> <short-name>my</short-name> <tag> <name>cutPage</name> <tag-class>com.pjb.sys.tag.PageTag</tag-class> <attribute> <name>action</name> <required>true</required> <description>请求action 如:showBookPage.do?page</description> </attribute> </tag> </taglib>
在页面中使用时,需导入标签定义
<%@ taglib prefix="my" uri="/WEB-INF/mytag.tld"%>
引用标签名
<my:cutPage action="/readerManagerAction.do?method=getReaderList&page="></my:cutPage>
action 代码
/** * 查询列表 * * @param mapping * @param form * @param request * @param response * @return ActionForward * @throws Exception */ public ActionForward getReaderList(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { try { ReaderService rs = (ReaderService) this.getBean("readerService"); PageBean pageBean = new PageBean(); String pageStr = request.getParameter("page"); if (pageStr != null) { pageBean.setCurrentPage(Integer.parseInt(pageStr)); } List<ReaderBean> list = rs.getReaderList(pageBean); request.setAttribute("list", list); request.setAttribute("pageBean", pageBean); return mapping.findForward("showReaderList"); } catch (Exception e) { e.printStackTrace(); logger.error(e.getMessage()); request.setAttribute("errMsg", e.getMessage()); } return mapping.findForward("error"); }
ibatis分页取记录DAO
public List<ReaderBean> getReaderList(PageBean pageBean) throws FrameworkDaoException { try { List readerList = this.getSqlMapClientTemplate().queryForList("getReaderList", null); pageBean.setTotalResults(readerList.size()); return this.getSqlMapClientTemplate().queryForList("getReaderList", null, pageBean.getStartResult(), pageBean.getPageSize()); } catch (DataAccessException e) { e.printStackTrace(); throw new FrameworkDaoException(e); } }
发表评论
-
DWR
2010-03-04 13:41 1015DWR是一个框架,简单的说就是能够在javascript直接调 ... -
获得客户端真实IP地址
2009-12-30 16:05 1075我们知道在JSP里,获取网页客户端的IP地址的方法是:requ ... -
创建和管理有状态 Web 应用程序
2009-11-17 23:49 926在创建有状态应用程序时,数据管理是关键。为了智能地管理用户数据 ... -
什么是线程安全?
2009-10-31 22:18 2137如果你的代码所在的进程中有多个线程在同时运行,而这些线程可 ... -
session与cookie
2009-10-31 01:54 852术语session在我的经验里 ... -
HttpSession
2009-10-31 01:42 1109HttpSession常见问题 1、ses ... -
Java获取真实客户端IP地址
2009-10-29 23:55 1524在JSP里,获取客户端的IP地址的方法是:request.ge ... -
Java解析XML四种方法
2009-10-29 20:40 2011XML现在已经成为一种通 ... -
Tomcat配置DataSource
2009-10-24 16:04 5924一、数据源简介:*********************** ... -
Tomcat安装Admin控制平台和管理平台
2009-10-24 16:02 1546Tomcat 5可以通过 ... -
J2EE体系结构设计
2009-10-24 13:46 1052J2EE体系结构设计 目前 ... -
使用Ant构建J2EE开发目录结构
2009-10-22 23:19 2732企业应用程序由一个或 ... -
Linux安装JDK
2009-10-22 21:08 12451:下载JDK【jdk-6u1-linux-i586.bin】 ... -
WEB资源设置安全约束
2009-09-24 23:24 1125<!-- 当web客户访问受保护的资源时,系统弹出登陆对 ... -
自动刷新页面
2009-09-22 23:45 1025一分钟自动刷新页面<meta http-equiv=&q ... -
target属性
2009-09-22 23:42 1199html target HTML中target的相关说明 ... -
EJB三个对象
2009-09-22 23:40 1949EJB的三个对象 1、Remote(或Local)接口 ... -
EJB bean理解
2009-09-22 23:39 1385实体bean(entity bean) 实体bean用来表示 ... -
EJB事务属性理解
2009-09-22 23:38 22901、Required 当需要EJB总是运行在事务当中时使用R ... -
数据源详解
2009-09-22 23:36 847一、数据源简介:******* ...
相关推荐
"强大的自定义标签分页"是指通过自定义JSP标签来实现灵活、高效的分页功能。这种方式可以提供更高的定制性,使得开发者可以根据项目需求进行个性化的设计和调整。 首先,我们来了解自定义标签。在Java Web开发中,...
本项目结合了Java、Hibernate、JSP以及TLD(Tag Library Descriptor)技术,实现了一个高效、易懂且实用的自定义标签分页解决方案。下面我们将详细探讨这些技术以及它们在分页中的应用。 首先,Java作为后端编程...
在这个“java自定义标签分页”主题中,我们将深入探讨如何利用自定义标签来实现高效且易于维护的分页功能。 首先,自定义标签的定义通常涉及以下组件: 1. TLD(Tag Library Descriptor)文件:这是定义自定义标签...
本项目“Taglib自定义标签分页”提供了一个完整的解决方案,它实现了在网页上进行分页显示的功能,无需在每个JSP页面中重复编写分页代码,极大地提高了开发效率和代码复用性。 首先,我们需要了解自定义标签的基本...
标题"自定义标签分页非常简单"意味着我们将探讨如何通过自定义标签来实现一个简洁且易于使用的分页功能。 自定义标签在JSP 2.0及以上版本中引入,它基于JSP Tag Library(JSTL)规范。自定义标签不是HTML标签,而是...
JSP自定义标签分页+Struts1.x标签,包含标签分页类、标签tld文件、web.xml配置和调用例子,非常地简单。 只要在Action传request.setAttribute("listUser", listUser);到JSP即可实现自动分页,输出分页样式可以自己去...
标题和描述中提到的"邮箱(hibernate+Servlet+自定义标签,内带hibernate配置,自定义标签分页)"是一个基于Java技术栈的Web应用项目,它利用Hibernate作为持久层框架,Servlet作为控制层,以及自定义标签来实现前端展示...
自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签自定义分页标签...
在这个基于Struts2的自定义分页标签的实践中,我们将深入探讨如何创建、配置和使用自定义标签来实现数据的分页展示,同时与Oracle数据库进行交互。 首先,理解分页的基本概念至关重要。分页是将大量数据分成小块,...
//得到分页米尺数值 sb.append("function getMaxNum(){"); sb.append("var val=document.getElementById('onePageMaxNum').value;"); sb.append("if(val=='') return "+measurement+";"); sb.append(" return ...
总结一下,实现Struts 2 自定义标签分页需要对Struts 2框架有深入理解,包括标签库的创建、Java类的编写、JSP页面的布局以及Action的交互。通过这种方式,我们可以创建出符合项目需求的、灵活可扩展的分页解决方案,...
总的来说,SSH框架整合通用模板提供了一个成熟的开发环境,通过自定义标签分页、通用DAO和服务,使得开发人员可以快速构建应用,同时降低了维护成本。对于初学者或熟悉SSH的开发者来说,这是一个很好的学习和实践的...
本例中,我们探讨的是如何结合Struts、Hibernate和自定义标签实现分页功能,这是一种常见的优化用户界面体验的技术,特别是对于数据量大的查询结果。 1. **分页原理** 分页的基本思想是将大量数据分成多个小部分,...
本项目提供了一个用于分页的自定义标签,适用于那些需要在网页上进行数据分页展示的应用。 首先,我们要理解什么是JSP自定义标签。在JSP中,自定义标签是通过TLD(Tag Library Descriptor)文件定义的,它允许...
4. **创建分页标签库**:Struts2支持自定义标签,你可以创建一个`.tld`文件来定义分页标签。标签库应该包含开始、结束、上一页、下一页等标签,以便在视图层中方便地使用。 5. **实现标签处理类**:对应的Java类...
在Java Web开发中,自定义标签通常用于封装复杂的业务逻辑或者视图展示,比如这里的"分页标签"。分页是Web应用中常见的功能,用于处理大量数据时的页面导航,如搜索结果或用户列表的显示。 `whaosoft`可能是一个...
本文将深入探讨如何使用Java自定义标签来实现分页功能,当前位置的显示以及数据的循环遍历。 首先,让我们了解一下Java自定义标签的基本概念。自定义标签是JSP的一种扩展机制,它允许开发者创建自己的标签库,这些...
自定义的漂亮分页标签,支持上下翻页,直接跳转指定页
jh-plugins是一项基于JSTL的自定义标签(插件)库,致力于打造一处实现、任何项目通用的开源项目。 jh-plugins已实现标签库:分页 jh-plugins特点:高效、轻巧、简单、适用(可融合与任何B/S架构的java项目) jh-...