通用分页一 已经把数据展示到页面上,并且能够按代码来规定查询多少条,
这次就就以a标签的形式,由用户来进行分页,
具体的思路
1、 对pagebean增强(添加url、paramMap属性,添加初始化pagebean的方法、最大页、上一页、下一页方法)
2、 将按钮条写入标签助手类
3、 将隐藏的form表单写入标签助手类
4、 将对应的js代码写入标签助手类
5、 测试通用分页是否完善
- 需要的类
-
PageBean BookServlet PageTag bookList
标签描述文件 z.tld
先把PageBean需要的方法写好
public class PageBean {
private int page = 1;// 页码
private int rows = 10;// 页大小
private int total = 0;// 总记录数
private boolean pagination = true;// 是否分页
private String url;
private Map<String, String[]> paramMap = new HashMap<>();
public void setRequest(HttpServletRequest req) {
this.setPage(req.getParameter("page"));
this.setRows(req.getParameter("rows"));
this.setPagination(req.getParameter("pagination"));
// getRequestURL获取到浏览器请求的全路径
this.setUrl(req.getRequestURL().toString());
// getParameterMap可以获取到一次url请求所携带的所有参数
this.setParamMap(req.getParameterMap());
}
public void setPagination(String pagination) {
if (StringUtils.isNotBlank(pagination)) {
this.setPagination(!"false".equals(pagination));
}
}
public void setRows(String rows) {
if (StringUtils.isNotBlank(rows))
this.setRows(Integer.valueOf(rows));
}
public void setPage(String page) {
if (StringUtils.isNotBlank(page)) {
this.setPage(Integer.valueOf(page));
}
}
public PageBean() {
super();
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public Map<String, String[]> getParamMap() {
return paramMap;
}
public void