nginx反向代理
2015-10-14 22:03
549 查看
public class Page { public static int MAX_ROW = 10; private int index; private int page_num; private int total; private String url; public Page(int index, int total, String url) { this.index = index; this.total = total; this.url = url; this.page_num = total%MAX_ROW==0? total/MAX_ROW : total/MAX_ROW+1; } public String getFooter() { //不足一页 不显示分页信息 if(total<=MAX_ROW) { return ""; } StringBuffer sb = new StringBuffer("分页:"); //不足MAX_ROW页 if(page_num <= MAX_ROW) { for(int i=0; i<page_num; i++) { insertTag(sb, i); } if(index+MAX_ROW < total) { insertTag(sb, index+MAX_ROW, "下一页"); } else { sb.append("下一页"); } return sb.toString(); } else { int unit = MAX_ROW * MAX_ROW; if(index < unit) { int i; for(i=0; i<MAX_ROW; i++) { insertTag(sb, i); } String tt = "下" + MAX_ROW + "页"; insertTag(sb, i*MAX_ROW, tt); return sb.toString(); } else { //当前页 int currentPage = index/MAX_ROW; //当前面 一面有MAX_ROW页 int currentSection = currentPage/MAX_ROW + 1; //上一面起始页 int lastPage = (currentSection-1) * MAX_ROW - 1; //上一面起始记录 int lastPageRow = lastPage * MAX_ROW; //下一面起始页 int nextPage = currentSection * MAX_ROW; //下一面起始记录 int nextPageRow = nextPage * MAX_ROW; String tt = "上" + MAX_ROW + "页"; insertTag(sb, lastPageRow, tt); //是否显示下一面 if(nextPageRow <= total-1) { for(int i=0; i<MAX_ROW; i++) { insertTag(sb, i+lastPage + 1); } tt = "下" + MAX_ROW + "页"; insertTag(sb, nextPageRow, tt); } else { int lengthOfPage = total - (lastPage + 1) * MAX_ROW; lengthOfPage = lengthOfPage/MAX_ROW + 1; for(int i=0; i<lengthOfPage; i++) { insertTag(sb, i - 1 + lastPage); } } return sb.toString(); } } } public void insertTag(StringBuffer sb, int num) { int temp = index/MAX_ROW; if(num==temp) { sb.append(num+1).append(" "); } else { sb.append("<a href=" + url + "&start_index="); sb.append(num*MAX_ROW).append(">").append(num+1).append("</a> "); } } public void insertTag(StringBuffer sb, int num, String str) { sb.append("<a href=" + url + "&start_index="); sb.append(num).append(">").append(str).append("</a> "); } public static void main(String[] args) { System.out.println(new Page(120,250,"http://www.g.cn").getFooter()); //输出: 分页:上10页 11 12 13 14 15 16 17 18 19 20 下10页 } }
JAVA分页工具类
分页工具栏显示为:
分页:上10页 11 12 13 14 15 16 17 18 19 20 下10页
相关文章推荐
- Nginx反向代理(基于目录动静分离、不同浏览器类型不同代理、基于扩展名的不同代理)
- netfilter和squid配合创建透明代理的问题讨论
- Nginx 反向代理 分配方式 防攻击真实Ip
- (Nginx+Apache)实现反向代理与负载均衡
- [置顶] Nginx 反向代理、负载均衡、虚拟主机实践教程
- 【Linux常识篇(1)】所谓的正向代理与反向代理
- CentOS配置基于web认证的squid 3.1.23
- Nginx 反向代理的正确配置
- ../include/squid_md5.h:27:2: error: #error Cannot find OpenSSL MD5 headers【squid安装中】
- 配置apache的反向代理
- apache反向代理
- squid代理服务的配置
- 如何搭建web服务器 使用Nginx搭建反向代理服务器
- Squid
- 【Nginx】使用Nginx做反向代理时,关于被代理服务器相应的超时设置
- nginx反向代理(部署tomcat网站)
- nginx反向代理之缓存,负载均衡,动静分离的配置详解
- 利用Apache的转发模块实现反向代理服务器
- Nginx反向代理+Tomcat+Springmvc获取用户访问ip
- 负载均衡反向代理模式优点及缺点