mysql jsp分页技术_JSP+MYSQL分页技术

驱动JAR包:struts1.x  mysql

String driverName = "com.mysql.jdbc.Driver";

String userName = "root";//数据库用户名

String userPasswd = "xxm";//密码

String dbName = "student";//数据库名

String tableName = "student"; //表名

//连接字符串

String url = "jdbc:mysql://127.0.0.1:3306/" + dbName+ "?user=" + userName + "&password=" + userPasswd;

Class.forName(driverName).newInstance();

Connection connection = DriverManager.getConnection(url);

Statement statement = connection.createStatement();

int EveryPageSize = 4;   //每页显示记录数

int FirstPage=0;   //起始页

int LastPage=0;    //最后一页

int CurrentPageNo = 0;  //当前页

int CurrentPageStartNo = 0; //当前页的起始值

int CurrentPageEndNo = 0; //当前页的结束值-----在次页面没有起到作用

int TotalRecords = 0;  //总记录数;

int TotalPage = 0;   //总页数

int PrePage = 0;   //上一页

int NextPage = 0;   //下一页

//获取总记录数

ResultSet rs = statement.executeQuery("select count(*) from "+tableName);

rs.next();

TotalRecords = rs.getInt(1);

//获取总页数

if (TotalRecords % EveryPageSize == 0) {

TotalPage = TotalRecords / EveryPageSize;

} else {

TotalPage = TotalRecords / EveryPageSize + 1;

}

//获取需要显示的页数,由用户提交

//如果为空,则默认表示第1页

if (request.getParameter("CurrentPageNo") == null) {

//如果只有一页

if(TotalRecords<=EveryPageSize){

FirstPage=1;

LastPage=1;

CurrentPageNo = 1;

CurrentPageStartNo=0;

CurrentPageEndNo=TotalRecords-1;

}else{

//如果大于一页

FirstPage=1;

//如果刚好满页显示

if(TotalRecords%EveryPageSize==0){

LastPage=TotalRecords/EveryPageSize;

}else{

LastPage=TotalRecords/EveryPageSize+1;

}

CurrentPageNo = 1;

CurrentPageStartNo=0;

CurrentPageEndNo=EveryPageSize-1;

}

} else {

//如果不为空,可能是第一页,也可能不是

CurrentPageNo = Integer.parseInt(request.getParameter("CurrentPageNo")); //获得用户提交的页数

if(CurrentPageNo==1){

//如果只有一页

if(TotalRecords<=EveryPageSize){

FirstPage=1;

LastPage=1;

CurrentPageStartNo=0;

CurrentPageEndNo=TotalRecords-1;

}else{

//如果大于一页

FirstPage=1;

//如果刚好满页显示

if(TotalRecords%EveryPageSize==0){

LastPage=TotalRecords/EveryPageSize;

}else{

LastPage=TotalRecords/EveryPageSize+1;

}

CurrentPageStartNo=0;

CurrentPageEndNo=EveryPageSize-1;

}

}else{

FirstPage=1;

//如果刚好满页显示

if(TotalRecords%EveryPageSize==0){

LastPage=TotalRecords/EveryPageSize;

}else{

LastPage=TotalRecords/EveryPageSize+1;

}

CurrentPageStartNo=(CurrentPageNo-1)*EveryPageSize;

CurrentPageEndNo=TotalRecords-(CurrentPageNo-1)*EveryPageSize;

}

}

%>

分页显示记录
分页显示记录
序号学号名字性别分数

if(request.getParameter("first")!=null ){

CurrentPageStartNo=0;

EveryPageSize=1;

}

if(request.getParameter("last")!=null){

CurrentPageStartNo=TotalRecords-1;

System.out.println(CurrentPageStartNo);

}

String sql="SELECT * FROM "+tableName+" ORDER BY no DESC LIMIT " + CurrentPageStartNo + ", " + EveryPageSize;

System.out.println(sql);

rs = statement.executeQuery(sql);

int i = 1;

while (rs.next()) {

int order_ID = i + (CurrentPageNo - 1) * EveryPageSize;

%>

i++;

}

%>

out.print("");

out.print("第一条 ");

//显示第一页或者前一页的链接

//如果当前页不是第1页,则显示第一页和前一页的链接

if (CurrentPageNo != 1) {

PrePage = CurrentPageNo - 1;

out.print("第一页 ");

out.print(":");

out.print("前一页");

}

out.print("[");

//打印需要显示的页码

for (int c = FirstPage; c <= LastPage; c++) {

if(c

out.print("" + c + "");

out.print(",");

}else if(LastPage==TotalPage){

out.print("" + c + "");

}

}

out.print("]");

if (CurrentPageNo < TotalPage) { //如果当前页不是最后一页,则显示下一页链接   ,最后一页的链接

NextPage = CurrentPageNo + 1;

out.print("下一页");

out.print(":");

out.print("最后一页");

}

out.print("最后一条");

out.print("");

%>

rs.close();

statement.close();

connection.close();

%>

______________________________________________________________________________________

Connection con = null;

ResultSet rs = null;

int PageSize = 10; //一页显示的记录数

int RowCount; //记录总数

int PageCount; //总页数

int Page; //待显示页码

int i, j;

String strPage = request.getParameter("page");

if (strPage == null) {

//表明在QueryString中没有page这一个参数,此时显示第一页数据

Page = 1;

} else {

//将字符串转换成整型

Page = Integer.parseInt(strPage);

if (Page < 1)

Page = 1;

}

Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");

con = DriverManager.getConnection("proxool.game");

String count = "select count(*) from cq_play ";

PreparedStatement pstmt = con.prepareStatement(count);

rs = pstmt.executeQuery();

rs.next();

RowCount = rs.getInt(1);

PageCount = (RowCount + PageSize - 1) / PageSize; //记算总页数

if (Page > PageCount)

Page = PageCount; //调整待显示的页码

String sql = "select * from cq_play ";

pstmt = con.prepareStatement(sql);

rs = pstmt.executeQuery();

i = (Page - 1) * PageSize; //将记录指针定位到待显示页的第一条记录上

for (j = 0; j < i; j++)

rs.next();

i = 0;

while (i < PageSize && rs.next()) {

i++;

}

%>

1){%>上一页下一页

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值