📄 paginationsupport.java
字号:
buf.append("<li><a href=\"" + url + "?pageSize=" + pageSize
+ "&curPage=" + curPage + urlPara + "\">尾页</a></li>\n");
}
buf.append("<li class=\"pageinfo\">第" + curPage + "页</li>\n");
buf.append("<li class=\"pageinfo\">共" + this.totalPages + "页"
+ this.totalCount + "条记录</li>\n");*/
buf.append("到第<input id=\"pagination_jumpto\" type=\"text\" onKeyPress=\"pagination_key()\" value=\""+ curPage+ "\" style=\"font-size:11px;width:30px;height:15px\">页\n");
buf.append("<IMG class=HandCursor title=\"翻指定的页码\" onclick=\"pagination_gotoPage()\" alt=\"翻指定的页码\" src=\""+this.getContextPath()+"/image/sys/btn_ok.gif\" border=\"0\" >");
buf.append("</div>\n");
return buf.toString();
}
public List getItems() {
return items;
}
public void setItems(List items) {
this.items = items;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getTotalCount() {
return totalCount;
}
public void setTotalCount(int totalCount) {
if (totalCount > 0) {
this.totalCount = totalCount; // 记录总数
this.totalPages = totalCount / pageSize; // 总页数
if (totalCount % pageSize > 0)
this.totalPages++;
indexes = new int[this.totalPages];
for (int i = 0; i < this.totalPages; i++) {
indexes[i] = pageSize * i;
}
// 当前页大于总页数
if (curPage > this.totalPages) {
curPage = this.totalPages;
}
setStartIndex((curPage - 1) * pageSize);
} else {
this.totalCount = 0;
}
}
public int[] getIndexes() {
return indexes;
}
public void setIndexes(int[] indexes) {
this.indexes = indexes;
}
public int getStartIndex() {
return startIndex;
}
public void setStartIndex(int startIndex) {
if (totalCount <= 0)
this.startIndex = 0;
else if (startIndex >= totalCount)
this.startIndex = indexes[indexes.length - 1];
else if (startIndex < 0)
this.startIndex = 0;
else {
this.startIndex = indexes[startIndex / pageSize];
}
}
public int getNextIndex() {
int nextIndex = getStartIndex() + pageSize;
if (nextIndex >= totalCount)
return getStartIndex();
else
return nextIndex;
}
public int getPreviousIndex() {
int previousIndex = getStartIndex() - pageSize;
if (previousIndex < 0)
return 0;
else
return previousIndex;
}
public Map getParamMap() {
return paramMap;
}
public void setParamMap(Map paramMap) {
String[] obj = (String[]) paramMap.get("pageSize");
if (obj == null || !Valid.isInt(obj[0])) {
pageSize = Config.pageSize;
} else {
pageSize = Integer.parseInt(obj[0]);
}
obj = null;
obj = (String[]) paramMap.get("curPage");
if (obj == null || !Valid.isInt(obj[0])) {
curPage = 1;
} else {
curPage = Integer.parseInt(obj[0]);
}
// urlPara="pageSize="+pageSize+"&curPage="+curPage;
urlPara = "";
Iterator iterator = paramMap.keySet().iterator();
String element = "";
map.put("pageSize", pageSize+"");
map.put("curPage", curPage+"");
while (iterator.hasNext()) {
element = (String) iterator.next();
if(!Valid.isValid(element, "^\\w*\\.\\w*")){
if (!Valid.isValid(element, "pageSize|curPage|actionMessage|errorMessage|idKeys")) {
if(paramMap.get(element) instanceof String[] ){
String[] e = (String[]) paramMap.get(element);
try{
urlPara += "&" + element + "=" + URLEncoder.encode(e[0],"GBK");
//urlPara += "&" + element + "=" + URLEncoder.encode(e[0]);
}catch(Exception ex){
}
map.put(element, e[0]);
}
}
}
}
startIndex = (curPage - 1) * pageSize;
this.paramMap = paramMap;
}
public int getCurPage() {
return curPage;
}
public void setCurPage(int curPage) {
this.curPage = curPage;
}
public static void main(String[] args) throws Exception {
PaginationSupport pagination = new PaginationSupport(20, 1);
pagination.setTotalCount(30);
pagination.setUrl("list.action");
System.out.println(pagination.getHtml());
}
public String getParams(){
/*String[] obj = (String[]) paramMap.get("pageSize");
if (obj == null || !Valid.isInt(obj[0])) {
pageSize = Config.pageSize;
} else {
pageSize = Integer.parseInt(obj[0]);
}
obj = null;
obj = (String[]) paramMap.get("curPage");
if (obj == null || !Valid.isInt(obj[0])) {
curPage = 1;
} else {
curPage = Integer.parseInt(obj[0]);
}
String tmpParams = "";
Iterator iterator = paramMap.keySet().iterator();
String element = "";
while (iterator.hasNext()) {
element = (String) iterator.next();
if(!Valid.isValid(element, "^\\w*\\.\\w*")){
if (!Valid.isValid(element, "pageSize|curPage|actionMessage|errorMessage|idKeys")) {
if(paramMap.get(element) instanceof String[] ){
String[] e = (String[]) paramMap.get(element);
try{
tmpParams += "&" + element + "=" + URLEncoder.encode(e[0],"GBK");
}catch(Exception ex){
}
}
}
}
}*/
String obj = (String) map.get("pageSize");
if (obj == null || !Valid.isInt(obj)) {
pageSize = Config.pageSize;
} else {
pageSize = Integer.parseInt(obj);
}
obj = null;
obj = (String) map.get("curPage");
if (obj == null || !Valid.isInt(obj)) {
curPage = 1;
} else {
curPage = Integer.parseInt(obj);
}
String tmpParams = "";
Iterator iterator = map.keySet().iterator();
String element = "";
while (iterator.hasNext()) {
element = (String) iterator.next();
if(!Valid.isValid(element, "^\\w*\\.\\w*")){
if (!Valid.isValid(element, "pageSize|curPage|actionMessage|errorMessage|idKeys")) {
if(map.get(element) instanceof String ){
String e = (String) map.get(element);
try{
tmpParams += "&" + element + "=" + URLEncoder.encode(e,"GBK");
//tmpParams += "&" + element + "=" + URLEncoder.encode(e);
}catch(Exception ex){
}
}
}
}
}
startIndex = (curPage - 1) * pageSize;
return "?pageSize=" + pageSize
+ "&curPage=" + curPage + tmpParams;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getContextPath() {
return contextPath;
}
public void setContextPath(String contextPath) {
this.contextPath = contextPath;
}
public Map<String, String> getMap() {
return map;
}
public void setParam(String key,String value){
this.map.remove(key);
this.map.put(key, value);
}
public void setSelfDefineNum(boolean selfDefineNum) {
this.selfDefineNum = selfDefineNum;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -