📄 pagenumber.java
字号:
/*
* PageNumber.java
*
* Created on 2006年10月9日, 上午8:21
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package page;
import java.io.*;
import java.sql.*;
import java.lang.String;
/**
*只需传进三个参数,一个是每页显示记录集数,一个是记录集,一个是URL
*取得分页效果只需调用一个getPage即可
* @mc1035
*/
public class PageNumber {
private int rowCount=1, //总的记录数。
pageSize=1, //每页显示的记录数。
showPage=1, //设置欲显示的页码数。
pageCount=1; //分页之后的总页数。
private ResultSet rs;
private String url;
private StringBuffer page=new StringBuffer();
private String formValue="-1";
/*
*设置记录集
*/
public void setRs(ResultSet a){
rs=a;
try {
rs.last(); //获取最后一行的行号:
rowCount=rs.getRow();//获取
} catch (SQLException ex) {
ex.printStackTrace();
}
}
public ResultSet getRs(){
return rs;
}
/*
*设置url
*/
public void setUrl(String a){
url=a;
}
public String getUrl(){
return url;
}
/*
*设置总记录数
*/
public void setRowCount(int n) {
rowCount=n;
}
public int getRowCount() {
return rowCount;
}
/*
*设置总的页数
*/
public void setPageCount() {
int n=(rowCount%pageSize)==0?(rowCount/pageSize):(rowCount/pageSize+1) ;
pageCount=n;
}
public int getPageCount() {
return pageCount;
}
/*
*设置显示第几页
*/
public void setShowPage(int n) {
showPage=n;
}
public int getShowPage() {
return showPage;
}
/*
*每页显示的记录数
*/
public void setPageSize(int n) {
pageSize=n;
}
public int getPageSize() {
return pageSize;
}
/*
*设置表单值
*/
public void setFormValue(String a){
formValue=a;
}
public String getFormValue(){
return formValue;
}
public void setForm(){
page.append("共有"+getRowCount()+"条记录 ");
page.append(" "+getPageCount()+"页 ");
page.append(" 当前为第"+getShowPage()+"页 ");
page.append("每页显示"+getPageSize()+"条记录");
if(getShowPage()!=1){
page.append("<Form action=\""+url+"\" method=\"post\">");
page.append("<Input Type=\"hidden\" name=\"formValue\" value=\"1\">");
page.append("<Input name=\"submit4\" type=\"submit\" value=\"首页\">");
page.append("</FORM>");
}else{
page.append("           ");
}
if(getShowPage()!=getPageCount()){
page.append("<Form action=\""+url+"\" method=\"post\">");
page.append("<Input Type=\"hidden\" name=\"formValue\" value=\""+(getShowPage()+1)+"\">");
page.append("<Input name=\"submit4\" type=\"submit\" value=\"下一页\">");
page.append("</FORM>");
}else{
page.append("           ");
}
if(getShowPage()!=1){
page.append("<Form action=\""+url+"\" method=\"post\">");
page.append("<Input Type=\"hidden\" name=\"formValue\" value=\""+(getShowPage()-1)+"\">");
page.append("<Input name=\"submit4\" type=\"submit\" value=\"上一页\">");
page.append("</FORM>");
}else{
page.append("           ");
}
if(getShowPage()!=getPageCount()){
page.append("<Form action=\""+url+"\" method=\"post\">");
page.append("<Input Type=\"hidden\" name=\"formValue\" value=\""+getPageCount()+"\">");
page.append("<Input name=\"submit4\" type=\"submit\" value=\"末页\">");
page.append("</FORM>");
}else{
page.append("           ");
}
page.append("<Form action=\""+url+"\" method=\"post\">");
page.append("输入欲要显示的页<Input Type=\"text\" name=\"formValue\" size=\"5\" value=\""+getShowPage()+"\">");
page.append("<Input name=\"submit4\" type=\"submit\" value=\"GO\">");
page.append("</FORM>");
}
public void showList(){
try{
page.append("<Table>");
page.append("<TR>");
ResultSetMetaData statName= rs.getMetaData();
for(int i=1;i<=statName.getColumnCount();i++){
page.append("<TH>"+statName.getColumnName(i));
}
page.append("</TR>");
for(int i=1;i<=getPageSize();i++) {
page.append("<TR>");
for(int j=1;j<=statName.getColumnCount();j++){
page.append("<TD>"+rs.getString(j)+"</TD>");
}
page.append("</TR>") ;
if(!rs.next()){
break;
}
}
page.append("</Table>");
setForm();
}catch(Exception e){
e.printStackTrace();
page.append(e);
}
}
public String getPage(){
setPageCount();
try{
int n=1;
if(formValue.equals("-1")){
formValue="1";
setShowPage(1);
rs.absolute((n-1)*getPageSize()+1);
}else {
try{
n=Integer.parseInt(formValue);
if(n>getPageCount()) {
n=getPageCount();
}
if(n<=0) {
n=1;
}
setShowPage(n);
rs.absolute((n-1)*getPageSize()+1);
} catch(NumberFormatException e){
e.printStackTrace();
n=getShowPage();
rs.absolute((n-1)*getPageSize()+1);
}
}
} catch(SQLException ex){
ex.printStackTrace();
}
showList();
String a=new String(page);
return a;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -