<%!
    int pataSize=5;// 每页多少数据
    int totalCount =0; //数据共多少
    int pageCount = 0; ///数据共有多少页
    int index=1; //index开始

  
    void getCount(int count)   //放入的一共的数据 totalCount 
   {
   pageCount = (totalCount%pataSize==0)?(totalCount/pataSize):(totalCount/pataSize+1);    //三元表达,判断有数据一共多少页
   };
  
   %>
   <% 
   if(request.getParameter("index")!=null)   //传过来的index判断是不是空
   {
   index=Integer.parseInt(request.getParameter("index"));  //获取index
   }
   if(index>=1){    // 大于1的index
  index=index-1;
   }else
{
  index=0;    // 首页
}
  if(index<=13)  //小于13的index
  {
  index=index+1;
  }else
  {
  index=14;   //尾页
  }
   
   Context ctx = new InitialContext();   //连接池
   DataSource ds =(DataSource) ctx.lookup("java:comp/envbc/news");
   Connection con =ds.getConnection();
   PreparedStatement ps =con.prepareStatement("SELECT count(1) FROM news");    //看看一共有多少数据
   ResultSet rs = ps.executeQuery();    //遍历出来
   if(rs.next())      //开始判断下一个有没有
   {
   totalCount=rs.getInt("count(1)");
   }
    PreparedStatement pss =con.prepareStatement("SELECT `ntitle` FROM news LIMIT ?,?");   //sql语句
    pss.setInt(1,(index-1)*pataSize);               //传入数据
    pss.setInt(2, pataSize);                //传入数据
   rs = pss.executeQuery();
   while(rs.next())          //遍历出来
   {
   out.print(rs.getString(1)+"<br>");
   }
   getCount(totalCount);    //放入的一共的数据 totalCount 
   for(int i =0;i<pageCount;i++)  //遍历循环这个页数
   {
   %>
   <a href='index.jsp?index=<%=(i+1)%>'><%out.print((i+1)); %></a>
   <%
   }
   %>
   <br><a href='index.jsp?index=<%=1%>'><%out.print("首页"); %></a>    //index 为1的时候是首页
  <a href='index.jsp?index=<%=index-1%>'><%out.print("上一页"); %></a>  //index 为-1的时候是上一页
  <a href='index.jsp?index=<%=index+1%>'><%out.print("下一页"); %></a>  //index 为+1的时候是下一页
  <a href='index.jsp?index=<%=14%>'><%out.print("尾页"); %></a>      //index 为14的时候是尾页
   <%

//关闭数据库
    try{
    rs.close();
    }catch(SQLException s){
    s.printStackTrace();
    }
    try{
    ps.close();
    }catch(SQLException s){
    s.printStackTrace();
    }
    try{
    con.close();
    }catch(SQLException s){
    s.printStackTrace();
    }
    %>

jsp分页的更多相关文章

  1. JSP分页显示实例(基于Bootstrap)

    首先介绍一款简单利落的分页显示利器:bootstrap-paginator 效果截图: GitHub官方下载地址:https://github.com/lyonlai/bootstrap-pagina ...

  2. 转:JSP 分页显示数据 (Oracle)

    JSP 分页显示数据 (Oracle) 标签: Oracle分页JSP分页 2013-11-19 20:40 3598人阅读 评论(1) 收藏 举报  分类: Web(11)  版权声明:本文为博主原 ...

  3. Jsp分页的简单制作

    Jsp分页的简单制作 运行环境:jsp+tomcat+eclipse 技术:servlet+jsp+mysql 分页技术还区分两个:假分页和真分页 假分页:一次性从数据库读出表的所有数据一次性的返回给 ...

  4. JSP 分页显示数据 (Oracle)

    要实现分页,首先我们要做的就是如何来编写SQL语句,网上也有很多,大家可以搜一下.在这里,我们使用一种比较常用的方式来编写SQL语句.代码如下: ----分页显示 select * from (sel ...

  5. 第一次做的jsp分页,详细代码。。。。

    自己学jsp也有了一段时间,而且自己现在上的课是java web现在雪儿基础做了一个最简单的jsp页面,代码都放在一个页面,自己准备在改进,一步步来,这里的代码可能不是很完美,没事,下面接下来会有大概 ...

  6. JSP 分页代码

    jsp 分页模板 后台分页代码: 说明: 在 com.zc.domain 包下: PageBean.java 文件 package cn.itcast.customer.domain;   impor ...

  7. JSP分页显示

    首先要定义四个变量: int pageSize: //每页显示多少条记录 int pageNow: //希望显示第几页 int pageCount: //一共有多少页 int rowCount: // ...

  8. Oracle+Jsp分页

    分页原理: 从jsp页面传到servlet请求中,可以获得当前点击的页数,第一次进入为首页,通过在servlet中获得的当前页数,并且设计一次性显示的内容数,就是几条信息, 并且从dao层查询到数据库 ...

  9. jsp分页技术

    1.以下为分页类: import java.io.Serializable;  import java.util.List;    import org.apache.commons.lang.bui ...

  10. Jsp分页实例---假分页

    今天总结一个JSP假分页的实例,由基本功能由js实现. 相较前一篇真分页中程序的功能,丰富了一些.具备首页尾页,和页面跳转功能. 首先还是来总结一下真假分页的优缺点和特性吧. 假分页:从数据库中取出所 ...

随机推荐

  1. A. Arrays(Codeforces Round #317 水题)

    A. Arrays time limit per test 2 seconds memory limit per test 256 megabytes input standard input out ...

  2. Vue深度学习(3)

    基础 Vue.js允许自定义指令,实质上是让你教 Vue一些新技巧:怎样将数据的变化映射到 DOM 的行为.可以使用 Vue.directive(id, definition) 的方法传入指令 id  ...

  3. 通过Graph 浏览器体验Microsoft Graph

    作者:陈希章 发表于 2017年3月18日 上一篇介绍了Microsoft Graph的基本概念,接下来我们快速体验一下Microsoft Graph到底能做什么? 为了帮助开发人员直观和快速体验Mi ...

  4. 工厂方法模式的一些思考(java语法表示)

    同为创造型设计模式的简单工厂模式可以理解为对new关键字的代替. 本着重复三次即重构的原则,如果一个对象在不同的地方被new了两次以上,那就可以考虑使用它.那我们为什么要用简单工厂模式代替new呢?就 ...

  5. 4.python迭代器生成器装饰器

    容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素是否包含在容器中.通常这类数据结构把所有的元素存储在内存中 ...

  6. AI 系列 总目录

    AI 系列 答应了园区大牛 张善友 要写AI 的系列博客,所以开始了AI 系列之旅. 一.四大平台系列(百度AI.阿里ET.腾讯.讯飞) 1.百度篇 (1) 百度OCR文字识别-身份证识别 (2) 基 ...

  7. BCryptPasswordEncoder加密及判断密码是否相同

    项目中用到了BCryptPasswordEncoder对密码进行二次加密,需要注意的是,加密后的字符串比较长,数据库的长度至少为60位. 通过BCryptPasswordEncoder的加密的相同字符 ...

  8. Python学习日记:day5-------dict字典

    #字典dict------->唯一的映射类型 1.数据类型的划分 数据类型划分为可变数据类型和不可变数据类型. 不可变数据类型:tupe(元组).bool.int.str           可 ...

  9. verilog抓外部低频输入信号的上升沿和下降沿

    版权申明:本文为博主窗户(Colin Cai)原创,欢迎转帖.如要转贴,必须注明原文网址 http://www.cnblogs.com/Colin-Cai/p/7220107.html 作者:窗户 Q ...

  10. bzoj 1996: [Hnoi2010]chorus 合唱队

    Description Input Output Sample Input 4 1701 1702 1703 1704 Sample Output 8 HINT Source 因为只会在区间的两端进行 ...