分页实现

例:

首页、上一页、下一页、最后一页

Bean中的代码

public class doPage {

//定义当前页

private int nowPage;

//定义每页显示的条数

private int pageSize;

//定义一个根据上述条件查询出的数据List

@SuppressWarnings("unchecked")

private List list;

//定义一个总的页数

private int totalPage;

public int getTotalPage() {

return totalPage;

}

public void setTotalPage(int totalPage) {

this.totalPage = totalPage;

}

public List getList() {

return list;

}

public void setList(List list) {

this.list = list;

}

public int getNowPage() {

return nowPage;

}

public void setNowPage(int nowPage) {

this.nowPage = nowPage;

}

public int getPageSize() {

return pageSize;

}

public void setPageSize(int pageSize) {

this.pageSize = pageSize;

}

Dao中的代码

//获得总的页数

public int doTotalPage(doPage dopage) {

int totalPage=0;

con = ConnectionFactory.getConnection();

try {

ps=con.prepareStatement("select count(*) from news");

rs=ps.executeQuery();

if (rs.next()) {

//获得总页数;总页数=上取整(总记录/每页大小)

//  System.out.println("总记录:"+rs.getInt(1)+"每页大小:"+dopage.getPageSize()+"页数:"+rs.getInt(1)/Double.parseDouble(dopage.getPageSize()+""));

totalPage=(int) Math.ceil(rs.getInt(1)/Double.parseDouble(dopage.getPageSize()+""));

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

DbClose.close(rs, ps, con);

}

return totalPage;

}

//查询所有的数据

public doPage doFindAll(doPage dopage) {

ArrayList userlist=new ArrayList();

con= ConnectionFactory.getConnection();

try {

String sql="select * from news limit "+(dopage.getNowPage()-1)*dopage.getPageSize()+"" +

" , "+dopage.getPageSize();

ps = con.prepareStatement(sql);

rs = ps.executeQuery();

while (rs.next()) {

//封装user对象

News new1=new News();

new1.setNid(rs.getInt("nid"));

new1.setNews(rs.getString("news"));

new1.setClasses(rs.getString("classes"));

new1.setDims(rs.getString("dims"));

//向数据集合中添加元素

userlist.add(new1);

}

//将查询的结果封装到doPage

dopage.setList(userlist);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

DbClose.close(rs, ps, con);

}

return dopage;

}

Servlet中的代码

// 查询所有的数据,并分页显示

if (biaoshi.equals("list")) {

InsertNews it = new InsertNews();

// 封装分页查询的参数的对象doPage

doPage dopage = new doPage();

dopage.setNowPage(Integer.parseInt(pageNo));

dopage.setPageSize(4);

// 执行查询操作,参数是doPage

dopage = it.doFindAll(dopage);

// 得到总的页数

dopage.setTotalPage(it.doTotalPage(dopage));

// 将返回的结果,放到request中到jsp中显示

request.setAttribute("doPage", dopage);

// 页面跳转

this.gotoPage("Comlist.jsp", request, response);

}

}

// 跳转页面方法

private void gotoPage(String URL, HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException {

RequestDispatcher rd;

rd = request.getRequestDispatcher(URL);

rd.forward(request, response);

}

public void init() throws ServletException {

}

Jsp中的代码

<DIV class=Extra>

<a href="InfoComManage?biaoshi=list&page=1">首页</a>

<%if (dopage.getNowPage() - 1 > 0) {%>

<SPAN class=Unable>

<a

href="InfoComManage?biaoshi=list&page=<%=(dopage.getNowPage() - 1)%>">上一页

</a>

</SPAN>

<%}

if (dopage.getNowPage() + 1 <= dopage.getTotalPage()) {

%>

<a

href="InfoComManage?biaoshi=list&page=<%=(dopage.getNowPage() + 1)%>">下一页</a>

<%}%>

<a                                              href="InfoComManage?biaoshi=list&page=<%=dopage.getTotalPage()%>">末页

</a>

</DIV>

分页实现-----首页、上一页、下一页、最后一页相关推荐

  1. 手机端安卓、苹果的分页逻辑:上拉、下拉动作

    手机端安卓.苹果的分页逻辑: 大方向:与传统分页逻辑不同,上拉取"时间点"之后的数据,下拉取"时间点"之后的数据: 核心参数设计: timestamp:时间点, ...

  2. html分页首页上一页下一页,HTML静态分页(形如:首页,上一页,下一页,尾页)...

    在HTML中有时候我们会用到静态分页,一次拿回一定量的数据结果条目,我们会以形如:第2页,共12页  首页 上一页 下一页 尾页 的方式进行静态分页,以下是该种静态分页的代码,供兄弟姐妹们参考. fu ...

  3. (首页上一页下一页尾页 + 下拉框跳转)分页功能

    说在前头(本人用的是bootstrap +jQuery 和 struts2 +  MVC)不影响分页功能 制作一个分页功能: 效果如下: 由上图可知,此功能只适合页数不是特别多的情况下,页数多的时候, ...

  4. GridView自定义分页样式(上一页,下一页,到第几页)(新手教程)

    今天要为网站做一个文章列表,发现GridView的分页样式很难看,于是结合网上的例子,自己做了一个.不是很美观,不过还是很实用的,先看下效果吧,如图(1).演示地址http://www.veryam. ...

  5. php分页上一页下一页判断,分页(上一页,下一页)

    实现功能:出现首页,下一页,上一页,尾页 $pagesize=2;//分页,已知每页显示几条记录,$pagesize //我们通过在地址栏传递page参数的形式获得当前是第几页,?page=1就是第一 ...

  6. Jquery分页之(上一页,下一页)

    Jquery分页之(上一页,下一页) 在工作中我们会经常用到分页功能,除了数据库实现分页查询和调用分页插件,前端也可以实现分页查询,接下来就有我来带着大家实现一个简单的分页效果. 分页就是将将过多的结 ...

  7. 简单分页,无需插件 实现 上一页|下一页 分页功能

    分页功能 五花八门,插件的使用也很方便.最近做项目,分页功能是写好的了,利用bootstarp 简单实现的, 类似于这种 但由于数据越来越多,这种循环的方式很不好看.于是想到上一页| 下一页 分页 的 ...

  8. java实现的分页方法(上一页下一页)

    /**按上一页下一页分页的方法    * @param jspName文件名(显示上一页.下一页)    * @param currentPage 当前页    * @param zs 记录总数    ...

  9. php分页不跳转,分页源代码,分页时上一页下一页不显示,但可以跳转

    分页源代码,分页时上一页下一页不显示,但可以跳转 $sql="select * from product where pronum like'%$key%' or pdes like '%$ ...

  10. php分页上一页下一页判断,一个分页函数:显示“上一页下一页”等

    '************************************************** '函数名:ShowPage '作 用:显示"上一页 下一页"等信息 '参 数 ...

最新文章

  1. 【实验吧】CTF_Web_简单的SQL注入之1
  2. qt+vs2017环境下XIMEA相机库的配置
  3. boost::histogram::accumulators::count用法的测试程序
  4. python编程入门第一课_python入门前的第一课 python怎样入门
  5. python字典(dict)合并的操作
  6. html select选择事件_用 Java 拿下 HTML 分分钟写个小爬虫
  7. jquery Ajax应用
  8. typo(ruby的开源blog)系统的安装
  9. 是什么让你的ExtJS应用程序运行缓慢?
  10. 第十章:基本数据结构(2)
  11. oracle11g数据库登录01017,sqlplus登录Oracle时ORA-01017: invalid username/password; logon denied的错误...
  12. gtasa手机版android7.1,圣安地列斯psp移植版
  13. 卡麦吉梅隆大学 计算机排名,2019年卡内基梅隆大学信息系统排名
  14. 【福利帖】当我谈学习视觉时,我谈些什么
  15. Git提交数据失败 error: failed to push some refs to 'https://github.com/XXXXXXX/gif.git'
  16. 实现一个简单的H5领红包的动画
  17. Python使用PuLP第三方库解决线性规划问题
  18. 腾讯qq企业邮箱登录入口界面如何设置
  19. 记住要仰望星空,不要低头看脚下!
  20. 乘风破浪会有时,直挂云帆济沧海

热门文章

  1. 计算机科学与技术内卷严重吗,考研内卷太严重,究竟怎么回事?
  2. js 中遇到英文双引号后端无法正常存储的解决方法
  3. SpringAOP之代理模式选择
  4. Ubuntu16.04安装软件提示E: Encountered a section with no Package: header错误
  5. PVE导入img为磁盘
  6. PAT 乙级 1071 小赌怡情 (15分)
  7. 自然码辅助码在线查询网站
  8. 程序员桌面上的EDO
  9. 怎么激活win10企业版系统
  10. Avast显示Win32:Evo-gen [Susp]