=========java文件
package org.rain.tag;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.SimpleTagSupport;
public class SmallRainJSPInTag extends SimpleTagSupport {
private Integer smallRainTotals;
private Integer smallRainTotalPages;
private Integer smallRainCounts = 10;
private String uri;
private String parameterName;
public String getParameterName() {
return parameterName;
}
public void setParameterName(String parameterName) {
this.parameterName = parameterName;
}
public Integer getSmallRainTotals() {
return smallRainTotals;
}
public void setSmallRainTotals(Integer smallRainTotals) {
this.smallRainTotals = smallRainTotals;
}
public Integer getSmallRainCounts() {
return smallRainCounts;
}
public void setSmallRainCounts(Integer smallRainCounts) {
this.smallRainCounts = smallRainCounts;
}
public String getUri() {
return uri;
}
public void setUri(String uri) {
this.uri = uri;
}
@Override
public void doTag() throws JspException, IOException {
smallRainTotalPages = smallRainTotals / smallRainCounts+1;
int doPageId=1;
PageContext pageContext = (PageContext) getJspContext();
HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
String smallRainParameter=request.getParameter(parameterName);
if(null!=smallRainParameter) {
try {
doPageId=Integer.parseInt(smallRainParameter);
}catch(Exception e) {
doPageId=1;
}
}
StringBuilder smallRainSB = new StringBuilder();
if (doPageId > 1) {
smallRainSB.append(" 上一页 ");
}
for (int i = 1; i <= smallRainTotalPages; i++) {
if (i == doPageId) {
smallRainSB.append(i);
} else {
smallRainSB.append(" " + i + " ");
}
}
if (doPageId < smallRainTotalPages) {
smallRainSB.append(" 下一页 ");
}
getJspContext().getOut().write(smallRainSB.toString().toCharArray());
}
}
=================tld文件,文件放在/WEB-INF/tld/rain.tld
==================web.xml
xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0">
============jsp文件,文件名为MulPageSystemTag.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="/web-rain/welcome.tld" prefix="rain"%>
<%@ page import="java.util.List,java.util.ArrayList"%>
<%!class PageSystemBean {
private String school;
private String home;
public String getSchool() {
return school;
}
public void setSchool(String school) {
this.school = school;
}
public String getHome() {
return home;
}
public void setHome(String home) {
this.home = home;
}
}
List
@Override
public void jspInit() {
int smallRainTotalRecord = 142;
smallRainPageBeans = new ArrayList
for (int i = 0; i < smallRainTotalRecord; i++) {
PageSystemBean bean = new PageSystemBean();
bean.setSchool("大学" + i);
bean.setHome("地址" + i);
smallRainPageBeans.add(i, bean);
}
}%>
<%
int smallRainSize = 10;
int smallRainCurrent = 1;
String smallRainpage = request.getParameter("smallRainpage");
if (smallRainpage != null) {
smallRainCurrent = Integer.parseInt(smallRainpage);
}
int smallRainDo = (smallRainCurrent - 1) * smallRainSize;
int totalPageBeans = smallRainPageBeans.size();
int totalPages = totalPageBeans / smallRainSize;
totalPages++;
List
if (totalPages == smallRainCurrent) {
smallRainCurrentPageBeans = smallRainPageBeans.subList(smallRainDo, totalPageBeans);
} else {
smallRainCurrentPageBeans = smallRainPageBeans.subList(smallRainDo, smallRainDo + smallRainSize);
}
%>
学校 | 地址 |
<%=smallRainPageBean.getSchool()%> | <%=smallRainPageBean.getHome()%> |