`
郭清明
  • 浏览: 17637 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

分页标签的举例

阅读更多



/*将xx.tld文件引入JSP,在页面上写
*<page:pageTag name="userForm" property="page" method="getUserInfo" zone="sResult,editZone"/>
*/

public class PageTag extends TagSupport {//继承自TagSupport

private String name;
private String property;
private String scope;
private String method;
private String zone;

public int doStartTag() throws JspException {

JspWriter out = pageContext.getOut();
HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
Pagination page = (Pagination) RequestUtils.lookup(super.pageContext, name, property, scope);
int pageNo = page.getPageNo();
int totalPage = page.getTotalPage();
int count = page.getCount();
int prePage = page.getPrePage();
int nextPage = page.getNextPage();
int pageSize = page.getPageSize();
try {
out.println("共" + totalPage + "页&nbsp;");
out.println("当前为第" + pageNo + "页&nbsp;");
out.println("总记录为" + count + "条&nbsp;");
out.println("<a href='javascript:getPagination(" + prePage + "," + pageSize + ")'>上一页</a>&nbsp;");
out.println("<a href='javascript:getPagination(" + nextPage + "," + pageSize + ")'>下一页</a>&nbsp;");
out.println("<a href='javascript:getPagination(1," + pageSize + ")'>首页</a>&nbsp;");
out.println("<a href='javascript:getPagination(" + totalPage + "," + pageSize + ")'>尾页</a>&nbsp;");
out.println("<input type='hidden' name='ps' value='"+pageSize+"'/>\n<input type='hidden' name='pn' value='"+pageNo+"'/>");
out.println(
"\n<script>\n"
+ "function getPagination(pageNo,pageSize){\n"
+ "document.getElementById('pn').value=pageNo;\n"
+ "document.getElementById('ps').value=pageSize;\n"
+ "ajaxAnywhere.submitAJAX('"
+ method
+ "','"
+ zone
+ "');\n"
+ "}\n"
+ "</script>\n");
} catch (Exception e) {
e.printStackTrace();
throw new JspTagException ("IOException:" + e.toString());
}
return super.doStartTag();
}


public List getUserInfo(UserVO userVO,Pagination page) throws Exception {
int start = (page.getPageNo()-1)*page.getPageSize();
return getSqlMapClient().queryForList("user.getUserInfoCommon",userVO,start,page.getPageSize());
}

page.tld:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib
        PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
       "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">

<taglib>
<tlibversion>1.0</tlibversion>
<jspversion>1.1</jspversion>
<shortname>application</shortname>
<info>
use for pagination
</info>
<tag>
<name>pageTag</name>
<tagclass>com.vanceinfo.user.web.PageTag</tagclass>
<bodycontent>jsp</bodycontent>
<attribute>
<name>name</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>property</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>method</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>zone</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
分享到:
评论

相关推荐

    jsp,list分页标签

    java,jsp,list,分页,标签,自定义标签

    Hibernate实现下拉示分页

    在JSP页面上,我们可以使用JSTL标签库来遍历数据并展示,同时创建下拉框供用户选择不同的页数: ```jsp ${totalPages}" step="1"&gt; ${i}" ${i == currentPage ? 'selected' : ''}&gt;第${i}页 姓名 年龄...

    liferay使用的标签

    - **LIFERAY-UI:PAGE-ITERATOR**:此标签用于分页显示大量数据,如数据库查询结果,使得用户能够逐页浏览,改善性能和用户体验。 - **LIFERAY-UI:MESSAGE**:用于在页面上显示动态消息,比如通知或提示信息,增强...

    bootstrap 路径导航 分页 进度条的实例代码

    举例来说,如果我们要用Bootstrap来创建一个包含路径导航、分页和进度条的页面,我们可以使用以下HTML代码作为参考: ```html &lt;!-- 路径导航 --&gt; &lt;li&gt;&lt;a href="#"&gt;首页&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="#"&gt;图书馆&lt;/a&gt;&lt;/li...

    2022年WPS-Office办公软件应用期末考试卷及答案.docx

    - **选定工作表**:要选定相邻的多个工作表,可以先单击第一个工作表的标签,然后按住`Shift`键不放,再单击最后一个工作表的标签即可完成选择。 ### 5. 文档分页 - **分页种类**:WPS文档中的分页包括自动分页、...

    phpcms V9利用num++实现多样形式列表标签调用

    模板标签提供了一种简洁的方式来处理数据的获取、排序以及分页等问题。在phpcms V9中,常见的用于列表调用的模板标签有{pc:content}、{loop}等。 在这篇文章中,作者提供了通过在循环中使用num++变量来实现不同样式...

    eXtremeComponents学习总结

    使用举例 #### 3.1 初级篇 **3.1.1 最简语句实例** 下面是一个使用ec进行分页的最基础示例: ```jsp 标题1" /&gt; 标题2" /&gt; ``` 在上述代码中: - `@taglib`指令引入了ec的标签库,`uri`标识了库的位置,`...

    JSP教程

    - **2.7.1 include动作标签**:类似于include指令标签,但主要用于在运行时动态包含文件。 - **2.7.2 param动作标签**:用于向include动作标签传递参数。 - **2.7.3 forward动作标签**:用于重定向到另一个资源。...

    Struts2 开发

    5. **性能优化**:对于大数据量的情况,可以考虑使用缓存或分页技术来提高响应速度,避免一次性加载过多数据。 6. **安全性考虑**:在实际应用中,需要对输入进行验证和过滤,防止XSS等安全攻击。 通过以上步骤,...

    Java微服务架构l零从基础到精通高清视频教程全套 163课

    091 Zookeeper 应用举例 092 Zookeeper 集群模式 093 Dubbo Admin 管理控制台 094 系统后台管理-修改所需依赖 095 服务提供者 096 服务消费者 097 测试 JRebel 热部署 098 登录页 099 首页1 099 首页2 100 使用 ...

    Java微服务架构163课

    091 Zookeeper 应用举例 092 Zookeeper 集群模式 093 Dubbo Admin 管理控制台 094 系统后台管理-修改所需依赖 095 服务提供者 096 服务消费者 097 测试 JRebel 热部署 098 登录页 099 首页1 099 首页2 100...

    JSP教程——必看.pdf

    - **3.1.3 常用方法举例**:例如使用`getHeader()`获取HTTP头部信息。 - **3.1.4 用户注册**:通过`request`对象收集用户的注册信息。 - **3.1.5 获取HTML表单提交的数据**:利用`getParameterNames()`获取所有...

    jsp教程超清晰版pdf

    - **常用方法举例**:`request.getParameterNames()`等。 - **用户注册**:示例展示了如何使用request对象处理用户注册流程。 - **获取HTML表单提交的数据**:具体方法如上所述。 - **表格**:使用表格来展示...

    JSP教程_免费.pdf

    - 常用方法举例:`request.getRequestURI()`返回请求的URI。 - 用户注册:通过获取表单提交的数据来处理用户注册逻辑。 - 获取HTML表单提交的数据:使用`request.getParameterNames()`获取所有参数名称。 - 表格...

    JSP从入门到精通

    - **3.1.3 常用方法举例**:`getRequestURI()`、`getRemoteAddr()`等。 - **3.1.4 用户注册**:使用request对象收集用户信息并存储。 - **3.1.5 获取HTML表单提交的数据**:通过`getParameter()`或`...

    JSP教程(清晰版)

    - **常用方法举例**:`request.getSession()`获取当前用户的Session。 - **用户注册**:使用`request`对象获取用户输入的注册信息。 - **获取HTML表单提交的数据**:使用`getParameter()`方法获取表单字段值。 - **...

    jsp教程.pdf

    - **3.1.3 常用方法举例**:了解如何使用`getHeader()`、`getSession()`等方法。 - **3.1.4 用户注册**:利用`request`对象收集用户输入,处理注册逻辑。 - **3.1.5 获取HTML表单提交的数据**:通过`getParameter...

Global site tag (gtag.js) - Google Analytics