急:怎么做成一个有关分页的bean啊?

lmj0221 2004-09-22 12:49:14
怎么做成一个有关分页的bean啊?不涉及到数据库,用Hibernate ,谢谢,我挺急啊!回复就给分
...全文
161 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
javafaq2004 2004-09-23
  • 打赏
  • 举报
回复
Jsp如下:
**********************
<%@ page language="java" import="java.util.*,java.sql.*" %>
<%@ page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="cn" scope="page" class="myConnection.Conn" /><!--引用数据库操作的bean,自己完成,这里不再赘述-->
<%
int curpage=1;//当前页
int page_record=20;//每页显示的记录数
//用下面的方法(sql查询完成,速度快)
curpage=Integer.parseInt(request.getParameter("page"));//获取传递的值,需要显示的页
ResultSet rs=cn.rsexecuteQuery("select top "+page_record+" * from tablename where id not in (select top "+(curpage*page_record)+" id from tablename order by id desc) order by id desc");
//本查询语句得到的是所要显示的1000页的20条记录,大致思路为——子查询排除需要显示的记录前的所有记录,父查询则对余下的记录进行降序排列
while(rs.next) {
out.println(rs.getInt("id").toString());
}
rs.close();
%>
Visonkeekoo 2004-09-23
  • 打赏
  • 举报
回复
package Page;
import java.sql.*;
import java.util.*;
import java.io.*;
import db.DBConnect;
public class PageCt
{
private long l_start; //开始纪录
private long l_end; //结束纪录
private long l_curpage; //当前页数
private long l_totalnum;//总记录数
private int int_num=5; //每页10条
private long l_totalpage; //总的页数
public void Init(long currentpage,long totalnum)
{
l_curpage = currentpage;
l_totalnum = totalnum;
if (currentpage>=0)
{
if (currentpage>=(long)Math.ceil((double)l_totalnum/(double)int_num))
l_curpage = (long)Math.floor((double)l_totalnum/(double)int_num);
else
l_curpage = currentpage;
}
else
{
l_curpage = 0;
}
l_start = l_curpage * int_num;
l_end = l_start + int_num;
if (l_end > l_totalnum)
l_end = l_totalnum;
l_totalpage = (long)Math.ceil((double)l_totalnum/(double)int_num);
}
public long getCurpage()
{
return l_curpage;
}
public long getPrepage()
{
if (l_curpage-1>=0)
{
return l_curpage-1;
}
else
{
return 0;
}
}
public long getNextpage()
{
if (l_curpage+1<=l_totalpage)
{
return l_curpage+1;
}
else
{
return l_totalpage;
}
}
public long getTotalnum()
{
return l_totalnum;
}
public long getTotalpage()
{
return l_totalpage;
}
public long getStart()
{
return l_start;
}
public long getEnd()
{
return l_end;
}
}
guojiafuzhuxi 2004-09-23
  • 打赏
  • 举报
回复
OO
lmj0221 2004-09-22
  • 打赏
  • 举报
回复
to 可爱:我等的花儿也谢啦^_^
robin0925 2004-09-22
  • 打赏
  • 举报
回复
等你回答阿!(可爱)
jionghan3855 2004-09-22
  • 打赏
  • 举报
回复
等等...
jionghan3855 2004-09-22
  • 打赏
  • 举报
回复
最好写一个tableBean,在里边设置分页
lmj0221 2004-09-22
  • 打赏
  • 举报
回复
楼上的
你写的那些我也看过
请问你怎么得到那个20000和100呀?
guestman 2004-09-22
  • 打赏
  • 举报
回复
Query q = session.createQuery("from Cat as c");
q.setFirstResult(20000);
q.setMaxResults(100);
List l = q.list();
treeroot 2004-09-22
  • 打赏
  • 举报
回复
分页是一个古老的问题,建议你搜索一下!
发帖
Java

4.9w+

社区成员

Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
帖子事件
创建了帖子
2004-09-22 12:49
社区公告
暂无公告