?? pages.java
字號:
package src.com.laoer.bbscs.sys;
import javax.servlet.http.*;
import org.apache.struts.util.*;
/**
* <p>Title: TianYi BBS</p>
* <p>Description: TianYi BBS System</p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: LAOER.COM/TIANYISOFT.NET</p>
* @author laoer
* @version 6.0
*/
public class Pages {
HttpServletRequest request = null;
String filename = ""; //文件名
int page = 1; //頁號
long totals = -1; //記錄總數
int perpagenum = 20; //每頁顯示記錄數
int style = 0; //分頁字串樣式
int allpage = 1; //總頁數
int cpage = 1; //當前頁
int spage = 1; //開始記錄數
String listPageBreak = "";
String[] pagesign = null;
public Pages() {
}
public Pages(HttpServletRequest request) {
this.request = request;
this.pagesign = SysUtil.getPagesign(request);
}
public Pages(HttpServletRequest request, int page, int totals, int perpagenum,
int style) {
this.request = request;
this.page = page;
this.totals = totals;
this.perpagenum = perpagenum;
this.style = style;
this.pagesign = SysUtil.getPagesign(request);
}
public Pages(HttpServletRequest request, int page, int totals, int perpagenum) {
this.request = request;
this.page = page;
this.totals = totals;
this.perpagenum = perpagenum;
this.pagesign = SysUtil.getPagesign(request);
}
public Pages(HttpServletRequest request, int page, int perpagenum) {
this.request = request;
this.page = page;
this.perpagenum = perpagenum;
this.pagesign = SysUtil.getPagesign(request);
}
public String getFileName() {
return this.filename;
}
public void setFileName(String aFileName) {
this.filename = aFileName;
}
public int getPage() {
return this.page;
}
public void setPage(int aPage) {
this.page = aPage;
}
public long getTotals() {
return this.totals;
}
public void setTotals(long aTotals) {
this.totals = aTotals;
}
public int getPerPageNum() {
return this.perpagenum;
}
public void setPerPageNum(int aperpagenum) {
this.perpagenum = aperpagenum;
}
public int getStyle() {
return this.style;
}
public void setStyle(int aStyle) {
this.style = aStyle;
}
public void setPagesign(String[] apagesign) {
this.pagesign = apagesign;
}
public int getSpage() {
return this.spage;
}
public void doPageBreak() {
this.allpage = (int) Math.ceil( (this.totals + this.perpagenum - 1) /
this.perpagenum);
int intPage = this.page;
if (intPage > this.allpage) { // pages == 0
this.cpage = 1;
}
else {
this.cpage = intPage;
}
this.spage = (this.cpage - 1) * this.perpagenum;
getPageBreakStr();
}
public String getListPageBreak() {
return this.listPageBreak;
}
private void getPageBreakStr() {
if (this.filename.indexOf("?") == -1 &&
(this.filename.endsWith(".do") ||
this.filename.endsWith(Constant.FILEPREFIX))) {
this.filename = this.filename + "?";
}
else {
if (!this.filename.endsWith("&")) {
this.filename = this.filename + "&";
}
}
StringBuffer sb = new StringBuffer();
if (this.style == 0) {
if (this.cpage > 1) {
sb.append("[<a href='");
sb.append(this.filename);
sb.append("page=1' >");
sb.append(pagesign[0]);
sb.append("</a>] [<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append( (cpage - 1));
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[1]);
sb.append("</a>] ");
this.listPageBreak = sb.toString();
/*
this.listPageBreak += "[<a href='" + this.filename +
"page=1' >" + pagesign[0] + "</a>] [<a href='" +
this.filename + "page=" +
(cpage - 1) + "'>" + pagesign[1] + "</a>] ";*/
}
if (this.cpage < this.allpage) {
sb.append("[<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append( (cpage + 1));
sb.append("' >");
sb.append(pagesign[2]);
sb.append("</a>] [<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append(this.allpage);
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("' >");
sb.append(pagesign[3]);
sb.append("</a>] ");
this.listPageBreak = sb.toString();
/*
this.listPageBreak += "[<a href='" + this.filename + "page=" +
(cpage + 1) + "' >" + pagesign[2] + "</a>] [<a href='" +
this.filename + "page=" + this.allpage +
"'' >" + pagesign[3] + "</a>] ";*/
}
return;
}
if (this.style == 1) {
if (this.cpage > 1) {
sb.append("[<a href='");
sb.append(this.filename);
sb.append("page=1");
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[0]);
sb.append("</a>] [<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append( (cpage - 1));
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[1]);
sb.append("</a>] ");
/*
this.listPageBreak += "[<a href='" + this.filename +
"page=1' >" + pagesign[0] + "</a>] [<a href='" +
this.filename + "page=" +
(cpage - 1) + "'>" + pagesign[1] + "</a>] ";*/
}
if (this.cpage < this.allpage) {
sb.append("[<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append( (cpage + 1));
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[2]);
sb.append("</a>] [<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append(this.allpage);
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[3]);
sb.append("</a>] ");
/*
this.listPageBreak += "[<a href='" + this.filename + "page=" +
(cpage + 1) + "' >" + pagesign[2] + "</a>] [<a href='" +
this.filename + "page=" + this.allpage +
"'' >" + pagesign[3] + "</a>] ";*/
}
int _cpage = 0;
if (this.allpage == 0) {
_cpage = 0;
}
else {
_cpage = cpage;
}
sb.append(Constant.MESSAGE.getMessage(this.request.getLocale(),
"bbscs.pages.str",
String.valueOf(this.totals),
String.valueOf(_cpage),
String.valueOf(this.allpage)));
/*
this.listPageBreak +=
Constant.MESSAGE.getMessage(this.request.getLocale(),
"bbscs.pages.str",
String.valueOf(this.totals),
String.valueOf(_cpage),
String.valueOf(this.allpage));*/
this.listPageBreak = sb.toString();
return;
}
if (this.style == 2) {
if (this.cpage > 1) {
sb.append("[<a href='");
sb.append(this.filename);
sb.append("inpages=1");
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[0]);
sb.append("</a>] [<a href='");
sb.append(this.filename);
sb.append("inpages=");
sb.append( (cpage - 1));
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[1]);
sb.append("</a>] ");
/*
this.listPageBreak += "[<a href='" + this.filename +
"inpages=1' >" + pagesign[0] + "</a>] [<a href='" +
this.filename + "inpages=" +
(cpage - 1) + "'>" + pagesign[1] + "</a>] ";*/
}
if (this.cpage < this.allpage) {
sb.append("[<a href='");
sb.append(this.filename);
sb.append("inpages=");
sb.append( (cpage + 1));
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[2]);
sb.append("</a>] [<a href='");
sb.append(this.filename);
sb.append("inpages=");
sb.append(this.allpage);
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[3]);
sb.append("</a>] ");
/*
this.listPageBreak += "[<a href='" + this.filename + "inpages=" +
(cpage + 1) + "' >" + pagesign[2] + "</a>] [<a href='" +
this.filename + "inpages=" + this.allpage +
"'' >" + pagesign[3] + "</a>] ";*/
}
int _cpage = 0;
if (this.allpage == 0) {
_cpage = 0;
}
else {
_cpage = cpage;
}
sb.append(Constant.MESSAGE.getMessage(this.request.getLocale(),
"bbscs.pages.str",
String.valueOf(this.totals),
String.valueOf(_cpage),
String.valueOf(this.allpage)));
this.listPageBreak = sb.toString();
/*
this.listPageBreak +=
Constant.MESSAGE.getMessage(this.request.getLocale(),
"bbscs.pages.str",
String.valueOf(this.totals),
String.valueOf(_cpage),
String.valueOf(this.allpage));*/
return;
}
if (this.style == 3) {
String postto;
if (this.filename != null && this.filename.length() > 0) {
sb.append(
"<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n");
filename = filename.toLowerCase();
int index = filename.indexOf("?");
if (index != -1) {
postto = filename.substring(0, index);
filename = filename.substring(index + 1, filename.length());
}
else {
postto = filename;
filename = "";
}
sb.append("<FORM METHOD=POST ACTION=\"" + postto + "\">\n");
sb.append("<tr><td><div align=\"right\">\n");
//System.out.println(filename);
if (filename != null && filename.length() > 0) {
String[] ss = filename.split("&");
if (ss != null) {
//System.out.println(ss.length);
for (int i = 0; i < ss.length; i++) {
String[] p = ss[i].split("=");
if (p != null && p.length == 2) {
sb.append("<INPUT TYPE=\"hidden\" name=\"" + p[0] +
"\" value=\"" +
p[1] + "\">\n");
}
}
}
}
if (filename != null && filename.length() > 0) {
filename = postto + "?" + filename;
}
else {
filename = postto;
}
if (this.cpage > 1) {
sb.append("[<a href='");
sb.append(this.filename);
sb.append("page=1");
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[0]);
sb.append("</a>] [<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append( (cpage - 1));
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[1]);
sb.append("</a>] ");
}
if (this.cpage < this.allpage) {
sb.append("[<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append( (cpage + 1));
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[2]);
sb.append("</a>] [<a href='");
sb.append(this.filename);
sb.append("page=");
sb.append(this.allpage);
//new
sb.append("&t=");
sb.append(this.totals);
//new
sb.append("'>");
sb.append(pagesign[3]);
sb.append("</a>] ");
}
int _cpage = 0;
if (this.allpage == 0) {
_cpage = 0;
}
else {
_cpage = cpage;
}
sb.append(Constant.MESSAGE.getMessage(this.request.getLocale(),
"bbscs.pages.str",
String.valueOf(this.totals),
String.valueOf(_cpage),
String.valueOf(this.allpage)));
sb.append(" ");
sb.append(Constant.MESSAGE.getMessage(this.request.getLocale(),
"bbscs.pages.post"));
sb.append("</div></td></tr>\n");
sb.append("</FORM>\n");
sb.append("</table>\n");
this.listPageBreak = sb.toString();
}
return;
}
}
public HttpServletRequest getRequest() {
return request;
}
public void setRequest(HttpServletRequest request) {
this.request = request;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -