public int getAllPages(int pageSize)
{
int i=0,num=0;
conn=this.getConnection();
String sql="select count(*) from bookInfo";
try {
pstmt=conn.prepareStatement(sql);
rs=pstmt.executeQuery();
if(rs.next())
{
num=rs.getInt(1);
}
if(i%pageSize==0)
{
i=num/pageSize;
}
else
{
i=num/pageSize+1;
}
} catch (SQLException e) {
e.printStackTrace();
}finally
{
this.CloseAll(conn, pstmt, rs);
}
return i;
}
解决方案 »
- spring mvc+hibernate所有页面检查是否已登录,应该怎么做
- tomcat 怎样导入?
- 如何在axis上部署多个服务,求部署文件,wsdd
- 在提交j_spring_security_check登录后,重定向到login_process.jspa,在login_process Action中如何得到 登录Form中其他一些input参数
- 求助-如何从jsp里调用远程的webservice
- hibernate问题
- 配置数据源的问题,已经快一天了,哪位高手帮帮忙????
- 开源工作流引擎?
- 关于XML与WebService的基础问题
- socket写的客户端和服务器程序,问一下DataInputStream是怎么回事啊!
- 求教一个xpath,如何获取一个没什么特别的table?
- RXTXcomm 串口连接不上,为什么?
//因为是 select count(*) ,所以结果只能有一行
if(rs.next())
{
// 把 sql语句统计的结果赋给 num
// 好久没用这种方式了,不知道这一块 是 getInt(1) 还是 getInt(0)
num=rs.getInt(1);
}
//如果 i 整除 pagesize , 那么 刚好总页数应该是 num / pageSize
//比如结果有 100个 , 即 num = 100, 每页 显示20条数据,那么就是 pageSize = 20
//这个时候 刚好是 100/20 = 5页
//这一块感觉因该是 if(num % pageSize )
if(i%pageSize==0) //此处应该写错了,换成 num % pageSize == 0
{
i=num/pageSize;
}
else
{
//如果 num % pageSize != 0
//比如此时 num = 110 , 而pageSize = 20 , 这个时候
//num % pageSize = 10 != 0 , 那么也就是说 num / pageSize != 整数
//而如果 num / pageSize = x.y , x.y不为整数 , 那么x.y 肯定 大于 x
//因为这个是整数除法,所以 num / pageSize = x 而不是 x.y ,
//这样的话 也就是最后一页不满 20条 ,但仍旧有一页 ,所以 结果应该是 x + 1
i=num/pageSize+1;
}