sql="update 贴子 set 点击次数=点击次数+1 where 贴子id="+Note_Id; //更新对应帖子的点击数 stmt.executeUpdate(sql); //执行更新操作 int PageSize=10; //一页显示的记录数 int RecordCount=0; //记录总数 int PageCount=0; //总页数 int ShowPage=1; //带显示页数 sql="Select * from 用户表,贴子 where 贴子.贴子作者=用户表.用户名 And 贴子.贴子id="+Note_Id+" And 版块id="+Board_Id+" or 贴子.贴子作者=用户表.用户名 And 贴子.回复id="+Note_Id+" And 版块id="+Board_Id+" order by 贴子.贴子id"; //遍历表找到对应id,和类别的帖子 //out.println(sql); rs=stmt.executeQuery(sql); //执行查询操作 rs.last(); //记录直到最后一条 RecordCount=rs.getRow(); //获取总的记录 PageCount=(RecordCount % PageSize==0)?(RecordCount/PageSize):(RecordCount/PageSize+1); //计算总页数 String Page=request.getParameter("page"); //一下是调整带显示的页码 if (Page!=null) { ShowPage=Integer.parseInt(Page); if (ShowPage>PageCount) ShowPage=PageCount; else if(ShowPage <0) ShowPage=1; }else ShowPage=1; if (RecordCount>0) { rs.absolute((ShowPage-1)*PageSize+1); for (int i=1;i <PageSize;i++)应该就是这样的,分页显示记录的功能
这种分页要注意两个地方
第一 因为用到rs.absolute(),要将结果集设成可滚动的
statement=connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
第二在 for循环的里面的最后部分要加上这个
for(...;...;...){
... ...
rs.next();//每取一行数据,指针向下移一位
if(rs.isAfterLast()){//判断指针是否到结尾了,是则跳出循环
break;
}
}
stmt.executeUpdate(sql); //执行更新操作
int PageSize=10; //一页显示的记录数
int RecordCount=0; //记录总数
int PageCount=0; //总页数
int ShowPage=1; //带显示页数
sql="Select * from 用户表,贴子 where 贴子.贴子作者=用户表.用户名 And 贴子.贴子id="+Note_Id+" And 版块id="+Board_Id+" or 贴子.贴子作者=用户表.用户名 And 贴子.回复id="+Note_Id+" And 版块id="+Board_Id+" order by 贴子.贴子id"; //遍历表找到对应id,和类别的帖子
//out.println(sql);
rs=stmt.executeQuery(sql); //执行查询操作
rs.last(); //记录直到最后一条
RecordCount=rs.getRow(); //获取总的记录
PageCount=(RecordCount % PageSize==0)?(RecordCount/PageSize):(RecordCount/PageSize+1); //计算总页数
String Page=request.getParameter("page"); //一下是调整带显示的页码
if (Page!=null)
{
ShowPage=Integer.parseInt(Page);
if (ShowPage>PageCount)
ShowPage=PageCount;
else if(ShowPage <0)
ShowPage=1;
}else
ShowPage=1; if (RecordCount>0)
{
rs.absolute((ShowPage-1)*PageSize+1);
for (int i=1;i <PageSize;i++)应该就是这样的,分页显示记录的功能