分页 一

import java.util.List;

import spider.xxxxx.common.PageBean;
/**
*
* @author jxialiang
*
*/
public class PagesTool {

/**
* 获得分页的字符串代码
* @param url 不分页之前的完整url 把所有参数都传过来 如:index.html?id=5&key=搜索
* @param page 显示页码
* @param size 每页的数量
* @param list 次页显示的内容,如果要显示10条的话 记得查找数据库的时候查找11条。这里面会做10条的数量控制
* @return
*/
public static String pagesInfo(String url, int page, int size, List<?> list){
String pagesInfo = "";
if(page>1 || (page==1 && list!=null && list.size() > size)){
String fullurl = url;
page = (page==0)?1:page;
int index=url.lastIndexOf("?");
if(index>=0){
fullurl += "&";
}else {
fullurl += "?";
}
int start = 1;
if(page>5){
start = page-4;
}
if(page>1){
pagesInfo += "<a href=\""+fullurl+"page="+1+"\" title=\"首页\">首页</a><a href=\""+fullurl+"page="+(page-1)+"\" title=\"上一页\">上一页</a>";
}
for(int i=start; i<page; i++){
pagesInfo += "<a href=\""+fullurl+"page="+i+"\">"+i+"</a>";
}
pagesInfo += "<span>"+page+"</span>";
if(list.size() > size){
pagesInfo += "<a href=\""+fullurl+"page="+(page+1)+"\" title=\"下一页\">下一页</a>";
list.remove(list.size()-1);
}
}
return pagesInfo;
}

/**
* 获得分页的字符串代码
* @param url 不分页之前的完整url 把所有参数都传过来 如:index.html?id=5&key=搜索
* @param page 显示页码
* @param size 每页的数量
* @param list 次页显示的内容,如果要显示10条的话 记得查找数据库的时候查找11条。这里面会做10条的数量控制
* @return
*/
public static String wapPagesInfo(String url, int page, int size, List<?> list){
String pagesInfo = "";
if(page>1 || (page==1 && list!=null && list.size() > size)){
String fullurl = url;
page = (page==0)?1:page;
int index=url.lastIndexOf("?");
if(index>=0){
fullurl += "&";
}else {
fullurl += "?";
}
if(page>1){
pagesInfo += "<a href=\""+fullurl+"page="+(page-1)+"\" title=\"上一页\">上一页</a>";
}
if(list.size() > size){
pagesInfo += " <a href=\""+fullurl+"page="+(page+1)+"\" title=\"下一页\">下一页</a>";
list.remove(list.size()-1);
}
}
return pagesInfo;
}
/**
*
* @param url
* @param page
* @param num
* @param size
* @return
*/
public static String pagesInfo(String url, int page, int num, int size){
String pagesInfo = "";
String fullurl = url;
int index = url.lastIndexOf("?");
if(index>=0){
fullurl += "&";
}else {
fullurl += "?";
}
if(num==0) {
num = 1;
}
int pagesnum = 0;
if(num%size==0){
pagesnum = num/size;
}else{
pagesnum = num/size+1;
}
if(pagesnum!=1){ //1也不显示
int start = 1;
if(page>2){
start = page-2;
}
int last = page+2;
if(page<2 ){
last = page+2+(2-page);
}
if(page+2>pagesnum || last>pagesnum){
last = pagesnum;
}
if(page==1){
pagesInfo = "<span class=\"nolink prexpage\">  上一页</span>";
}else{
pagesInfo = "<span class=\"prexpage\"><a href=\""+fullurl+"page="+(page-1)+"\">  上一页</a></span>";
}
if(page<=5 && page>3){
for(int i=1; i<start; i++){
pagesInfo += "<a href=\""+fullurl+"page="+i+"\"><span>"+i+"</span></a>";
}
}
if(page>5){
pagesInfo += "<a href=\""+fullurl+"page=1\"><span>1</span></a>";
pagesInfo += "<a href=\""+fullurl+"page=2\"><span>2</span></a>";
pagesInfo += "<span style=\"border:0px solid #CCCCCC\">...</span>";
}
for(int i=start;i<=last;i++){
if(i==page)
pagesInfo += "<span class=\"on\">"+page+"</span>";
else
pagesInfo += "<a href=\""+fullurl+"page="+i+"\"><span>"+i+"</span></a>";
}
if(last<num/size){
pagesInfo += "<span style=\"border:0px solid #CCCCCC\">...</span>";
}
if(page!=pagesnum){
pagesInfo += "<span class=\"nextpage\"><a href=\""+fullurl+"page="+(page+1)+"\">下一页</a></span>";
}else{
pagesInfo += "<span class=\"nolink nextpage\">下一页</span>";
}
pagesInfo += "共"+(num/size+1)+"页 到第<form style=\"display:inline;\" action=\""+url+"\" method=\"POST\"><input style=\"width:4%;height:18px;line-height:20px;\" type=\"text\" size=\"3\" name=\"page\" id=\"page\"/>页<input style=\"width:6%;\" type=\"submit\" value=\"确定\"/></form>";
}
return pagesInfo;
}
/**
*
* @param url
* @param page
* @param num
* @param size
* @return
*/
public static String pagesInfoBBS(String url, int page, int num, int size){
String pagesInfo = "";
String fullurl = url;
int index = url.lastIndexOf("?");
if(index>=0){
fullurl += "&";
}else {
fullurl += "?";
}
if(num==0) {
num = 1;
}
int pagesnum = 0;
if(num%size==0){
pagesnum = num/size;
}else{
pagesnum = num/size+1;
}
if(pagesnum!=1){ //1也不显示
int start = 1;
if(page>2){
start = page-1;
}
int last = page+1;
if(page<2 ){
last = page+1+(1-page);
}
if(page+1>pagesnum || last>pagesnum){
last = pagesnum;
}
if(page==1){
pagesInfo = "<span class=\"nolink prexpage\">  上一页</span>";
}else{
pagesInfo = "<span class=\"prexpage\"><a href=\""+fullurl+"page="+(page-1)+"\">  上一页</a></span>";
}
if(page<=3 && page>2){
for(int i=1; i<start; i++){
pagesInfo += "<a href=\""+fullurl+"page="+i+"\"><span>"+i+"</span></a>";
}
}
if(page>3){
pagesInfo += "<a href=\""+fullurl+"page=1\"><span>1</span></a>";
pagesInfo += "<span style=\"border:0px solid #CCCCCC\">...</span>";
}
for(int i=start;i<=last;i++){
if(i==page)
pagesInfo += "<span class=\"on\">"+page+"</span>";
else
pagesInfo += "<a href=\""+fullurl+"page="+i+"\"><span>"+i+"</span></a>";
}
if(last<num/size){
pagesInfo += "<span style=\"border:0px solid #CCCCCC\">...</span>";
pagesInfo += "<a href=\""+fullurl+"page="+pagesnum+"\"><span>"+pagesnum+"</span></a>";
}
if(page!=pagesnum){
pagesInfo += "<span class=\"nextpage\"><a href=\""+fullurl+"page="+(page+1)+"\">下一页</a></span>";
}else{
pagesInfo += "<span class=\"nolink nextpage\">下一页</span>";
}
pagesInfo += "共"+(num/size+1)+"页 到第<form style=\"display:inline;\" action=\""+url+"\" method=\"POST\"><input style=\"width:4%;height:18px;line-height:20px;\" type=\"text\" size=\"3\" name=\"page\" id=\"page\"/>页<input style=\"width:6%;\" type=\"submit\" value=\"确定\"/></form>";
}
return pagesInfo;
}

/**
* 论坛分页
* @param url
* @param page
* @param num
* @param size
* @return
*/
public static String pagesInfoNumber(String url, int num, int size){
String pagesInfo = "";
String fullurl = url;
int index = url.lastIndexOf("?");
if(index>=0){
fullurl += "&";
}else {
fullurl += "?";
}
if(num==0) {
num = 1;
}
int pagesnum = 0;
if(num%size==0){
pagesnum = num/size;
}else{
pagesnum = num/size+1;
}
if(pagesnum!=1){ //1也不显示
for(int i=1; i<=pagesnum&&i<7; i++){
pagesInfo += "<a href=\""+fullurl+"page="+i+"\">"+i+"</a> ";
}
if(pagesnum>7){
pagesInfo += "...<a href=\""+fullurl+"page="+pagesnum+"\">"+pagesnum+"</a> ";
}else if(pagesnum==7) {
pagesInfo += "<a href=\""+fullurl+"page=7\">7</a> ";
}
}
return pagesInfo;
}
/**
*
* @param url
* @param page
* @param num
* @param size
* @return
*/
public static String pagesInfosmall(String url, int page, int num, int size){
String pagesInfo = "";
String fullurl = url;
int index = url.lastIndexOf("?");
if(index>=0){
fullurl += "&";
}else {
fullurl += "?";
}
if(page==1){
pagesInfo = "<span class=\"nolink prexpage\">上一页</span>";
}else{
pagesInfo = "<span class=\"prexpage\"><a href=\""+fullurl+"page="+(page-1)+"\">  上一页</a></span>";
}
pagesInfo += "<span class=\"on\">"+page+"</span>";
int pagenum = num/size+1;
if(pagenum>page){
pagesInfo += "<span class=\"nextpage\"><a href=\""+fullurl+"page="+(page+1)+"\">  下一页</a></span>";
}else{
pagesInfo += "<span class=\"nolink nextpage\">下一页</span>";
}
return pagesInfo;
}

/**
* 开发商后台分页
* @param url
* @param page
* @param num
* @param size
* @return
*/
public static String pagesInfoAgent(String url, int page, int num, int size){
String pagesInfo = "";
String fullurl = url;
int index = url.lastIndexOf("?");
if(index>=0){
fullurl += "&";
}else {
fullurl += "?";
}
if(num==0) {
num = 1;
}
int pagesnum = 0;
if(num%size==0){
pagesnum = num/size;
}else{
pagesnum = num/size+1;
}
if(pagesnum!=1){ //1也不显示
int start = 1;
if(page>2){
start = page-1;
}
int last = page+1;
if(page<2 ){
last = page+1+(1-page);
}
if(page+1>pagesnum || last>pagesnum){
last = pagesnum;
}
if(page==1){
pagesInfo = "<span class=\"nolink prexpage\">  上一页</span>";
}else{
pagesInfo = "<span class=\"prexpage\"><a href=\""+fullurl+"page="+(page-1)+"\">  上一页</a></span>";
}
if(page<=3 && page>2){
for(int i=1; i<start; i++){
pagesInfo += "<a href=\""+fullurl+"page="+i+"\"><span>"+i+"</span></a>";
}
}
if(page>3){
pagesInfo += "<a href=\""+fullurl+"page=1\"><span>1</span></a>";
pagesInfo += "<span style=\"border:0px solid #CCCCCC\">...</span>";
}
for(int i=start;i<=last;i++){
if(i==page)
pagesInfo += "<span class=\"on\">"+page+"</span>";
else
pagesInfo += "<a href=\""+fullurl+"page="+i+"\"><span>"+i+"</span></a>";
}
if(last<num/size){
pagesInfo += "<span style=\"border:0px solid #CCCCCC\">...</span>";
pagesInfo += "<a href=\""+fullurl+"page="+pagesnum+"\"><span>"+pagesnum+"</span></a>";
}
if(page!=pagesnum){
pagesInfo += "<span class=\"nextpage\"><a href=\""+fullurl+"page="+(page+1)+"\">下一页</a></span>";
}else{
pagesInfo += "<span class=\"nolink nextpage\">下一页</span>";
}
pagesInfo += "共"+(num/size+1)+"页 到第<form style=\"display:inline;\" action=\""+url+"\" method=\"POST\"><input style=\"width:4%;height:18px;line-height:20px;\" type=\"text\" size=\"3\" name=\"page\" id=\"page\"/>页<input style=\"width:6%;\" type=\"submit\" value=\"确定\"/></form>";
}
return pagesInfo;
}

/**
*
* @param string url
* @param page 当前页码
* @param size 每页条数
* @param allRow 总条数
* @param vlist 当前页数据
* @return
*/
public static String pagesInfoAgent3(String actionname, int page, int size,
int allRow, List<?> vlist) {
PageBean pageBean = new PageBean();

int totalPage = PageBean.countTotalPage(size, allRow);//总页数
if (page > totalPage){
page = totalPage;
}

int currentPage = PageBean.countCurrentPage(page);

pageBean.setPageSize(size);
pageBean.setCurrentPage(currentPage);
pageBean.setAllRow(allRow);
pageBean.setTotalPage(totalPage);
pageBean.setList(vlist);
pageBean.init();

String ret = pageBean.getUrl(actionname);

return ret;
}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值