博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自定义分页标签
阅读量:6375 次
发布时间:2019-06-23

本文共 4213 字,大约阅读时间需要 14 分钟。

hot3.png

public class PageTag extends TagSupport { private static final long serialVersionUID = -6295188152350309742L;  //起到与jsp页面之间的通讯作用,set方法可以将jsp页面的pageContext对象传递给标签处理器 private PageContext pageContext; // 当前页 private Integer pageNum; // 每页的数量 private Integer pageSize; // 总记录数 private Integer total; // 总页数 private Integer pages; private String seachForm; private String paramEncoding = "UTF-8"; /**  * page bean的属性名  */ private String pageBeanName; public String getPageBeanName() {  return pageBeanName; } public void setPageBeanName(String pageBeanName) {  this.pageBeanName = pageBeanName; } public Integer getPageNum() {  return pageNum; } public void setPageNum(Integer pageNum) {  this.pageNum = pageNum; } public int getPageSize() {  return pageSize; } public void setPageSize(Integer pageSize) {  this.pageSize = pageSize; } public long getTotal() {  return total; } public void setTotal(Integer total) {  this.total = total; } public Integer getPages() {  return pages; } public void setPages(Integer pages) {  this.pages = pages; } public String getSeachForm() {  return seachForm; } public void setSeachForm(String seachForm) {  this.seachForm = seachForm; } public String getParamEncoding() {  return paramEncoding; } public void setParamEncoding(String paramEncoding) {  this.paramEncoding = paramEncoding; }  public PageContext getPageContext() {  return pageContext; }  public void setPageContext(PageContext pageContext) {  this.pageContext = pageContext; } @Override public int doStartTag() throws JspException {  if (pageBeanName == null)   pageBeanName = "pagination";  Pagination pagination = (Pagination) pageContext.getRequest().getAttribute(pageBeanName);  if (pagination != null) {   pageNum = pagination.getPageNum();   pages = pagination.getTotalPage();  }  return 0; } @Override public int doEndTag() throws JspException {  JspWriter out = pageContext.getOut();  try {   out.write(buildPage());  } catch (IOException e) {   e.printStackTrace();   throw new RuntimeException(e);  }  return 0; } /**  * @Title: buildPage   * @Description:创建分页  * @return   * @author   * @date 2016年1月22日  */ private String buildPage() {  if (pages == 1) {   return "";  }  int start = 0, end = 10;  if (pageNum >= 10 || (pageNum > 5 && pages > 10))   start = pageNum - 5;  if (pages > pageNum + 5)   end = pageNum + 5;  else   end = pages;  StringBuffer sb = new StringBuffer();  sb.append("
"); return sb.toString(); } /** * @Title: getPageMethod * @Description:构建分页的方法名 * @param pageNum * @return * @author * @date 2016年1月22日 */ private String getPageMethod(int pageNum) { return "\"pageJunmp('" + seachForm + "'," + pageNum + ",'" + pageBeanName + "')\""; }}
   
bootcss3 分页
   
1.0
   
page
   
http://mycompany.com/tag/page
   
       
pager
       
com.mycompany.website.unit.PageTag
       
empty
       
           
seachForm
           
true
           
true
       
       
           
pageBeanName
           
false
           
true
       
       
           
paramEncoding
           
false
           
true
       
   
function pageJunmp(form,pageNum,pageBeanName){  var inputName = pageBeanName+".pageNum";  form=$("#"+form);  form.attr("method","post");  var input = "";  form.append(input);  form.submit();}
< prefix="p" uri="" %>//引入标签
//标签使用

转载于:https://my.oschina.net/673236963/blog/610702

你可能感兴趣的文章
Fetch API 简单封装
查看>>
给媳妇做一个记录心情的小程序
查看>>
iOS App无需跳转系统设置自动连接Wi-Fi
查看>>
一道柯里化面试题
查看>>
本科studying abroad 无法毕业申请硕士转学转校处理一切studying abroad 问题
查看>>
RxJava(RxAndroid)的简单学习
查看>>
Java8 函数式编程之函数接口(下)
查看>>
【本人秃顶程序员】MySQL 全表 COUNT(*) 简述
查看>>
centos7中使用febootstrap自制一个基础的centos 7.2的docker镜像
查看>>
系统优化和克隆过程
查看>>
C#开发Unity游戏教程之判断语句
查看>>
Windows自带Android模拟器启动失败
查看>>
安装 SharePoint Server 2007
查看>>
angularjs表单验证-学习
查看>>
springmvc mybatis 调用sql , 转成json
查看>>
linux centos 7 网卡突然不能上网异常解决
查看>>
shell+Python实现简单的链路监控
查看>>
授之以渔-运维平台发布模块一(Jenkins篇)
查看>>
DedeCMS操作基础(一)
查看>>
FreeBSD部署dns缓存服务器
查看>>