<%!
    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. MySQL远程訪问的两个问题

    安装MySQL后,不能远程訪问.进行例如以下配置就可以 连接后,依旧不能连接,报例如以下错误: 1042 - Can't get hostname for your address 解决方法在my.i ...

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

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

  3. 【SqlServer】JSON函数

    1   概述 本篇文件将结合MSND简要分析Sqlserver中JSON函数,主要包括ISJSON,JSON_VALUE,JSON_MODIFY,JSON_QUERY. 2   具体内容 2.1  J ...

  4. 自学WPF之Binding(一)

    Binding的重要性就不作介绍了,是作为数据交互的支撑,下面来介绍一下为Binding指定源(Source)的几种方法: 把普通CLR类型的单个对象指定为Source:包括.NET Framewor ...

  5. Intellij idea 复制粘贴查找快捷键失效

    遇到此问题,竟不能复制, 发现原因,是因为勾选了Vim模式, Tools,Vim Emulator,前面会有一个√,取消即可,如图: 我的是这个原因,复制粘贴快捷键失效,也有可能历史粘贴板的深度不够 ...

  6. 【java】实例化对象的3种方式:new、clone、反射

    实例化对象的3种方式:new.clone.反射

  7. HTML5 进阶系列:拖放 API 实现拖放排序(转载)

    HTML5之拖放API实现拖放排序 前言 HTML5 中提供了直接拖放的 API,极大的方便我们实现拖放效果,不需要去写一大堆的 js,只需要通过监听元素的拖放事件就能实现各种拖放功能. 想要拖放某个 ...

  8. 监听键盘弹起View上调

    可以用三方库IQKeyboardManager 用这个第三方 http://www.jianshu.com/p/f8157895 #pragma mark - keyboard events - // ...

  9. k-近邻算法实例

    1. 简单例子 步骤 1.1 计算已知点和被求点的距离 1.2 按距离递增排序 1.3 求出距离最近的前k个点的类别最大值作为目标分类 from numpy import * import opera ...

  10. ElasticSearch 学习记录之ES如何操作Lucene段

    近实时搜索 提交(Commiting)一个新的段到磁盘需要一个 fsync 来确保段被物理性地写入磁盘,这样在断电的时候就不会丢失数据.但是每次提交的一个新的段都fsync 这样操作代价过大.可以使用 ...