jsp分页问题(oracle数据库),只能打印出第一页内容,点击下一页就没有内容显示,

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ page import="java.sql.*" %>
<%@ page import="org.zshwd.vo.User" %>

<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">



<%
int allCount = 0; //共多少条记录
int pageSize = 2; //每页多少条
int pageCount = 1; //共分多少页
int currentPage = 1; //当前页
%>
<%
try{
//当前页 采用地址栏传值方式
currentPage = Integer.valueOf(request.getParameter("page"));

}
catch(Exception e){
//e.printStackTrace();
}
//out.println(currentPage);
%>
<%!
private static final String DBDRIVER = "oracle.jdbc.OracleDriver";
private static final String DBURL = "jdbc:oracle:thin:@localhost:1521:orcl";
private static final String DBUSER = "scott";
private static final String DBPASSWORD = "tiger";
    private Connection conn = null;
%>

<%
    try{
        Class.forName(DBDRIVER);
        conn = DriverManager.getConnection(DBURL, DBUSER, DBPASSWORD);
    }
    catch (Exception e) {
        e.printStackTrace();
    }
%>
<%
    //count 数量
    String strSQL = "Select Count(*) As Num From Users";
    PreparedStatement pstmt;
    pstmt = conn.prepareStatement(strSQL);
    ResultSet rs = pstmt.executeQuery();
    if(rs.next()){
        allCount = rs.getInt(1);
    }
%>
<%
    int tempNum = 0;
    //取余数
    tempNum = allCount % pageSize;
    //有余数
    if(tempNum > 0){
        pageCount = allCount / pageSize + 1;
    }
    else{
        pageCount = allCount / pageSize;
    }
%>
<%
    //当前页
    if(currentPage <=0 ){
        currentPage = 1;
    }
    //大于总页数
    if(currentPage > pageCount){
        currentPage = pageCount;
    }
%>
<%
    /* strSQL = "Select UserId,UserName From Users limit " + (currentPage - 1) * pageSize + "," + pageSize; */
   strSQL = "select UserId,UserName from ( select t.*,rownum from Users t) where rownum>"+(currentPage-1)*pageSize+" and rownum<="+(currentPage)*pageSize; 
   /*  strSQL = "select UserId,UserName from ( select t.*,rownum from Users t) where rownum>0 and rownum<=2"; */
    List<User> listUser = new ArrayList<User>();

    // 准备sql
    pstmt = conn.prepareStatement(strSQL);  
    rs = pstmt.executeQuery();
    try {
        while (rs.next()) {
            User user = new User();
            user.setUserId(rs.getInt(1));
            user.setUserName(rs.getString(2));
            listUser.add(user);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
%>
<table>
    <tr>
        <td>主键Id</td>
        <td>用户名</td>
        <td>操作</td>
    </tr>
    <%
        Iterator iter = listUser.iterator();
        while(iter.hasNext())
        {
            User user = (User)iter.next();
    %>
    <tr>
        <td><%=user.getUserId() %></td>
        <td><%=user.getUserName() %></td>
        <td>修改   删除</td>
    </tr>
    <%
        }
    %>
</table>
<table>
    <tr><td align="center">共<font color="#f00"><%=allCount%></font>条 
    每页<font color="#f00"><%=pageSize%></font>条 
    分<font color="#f00"><%=pageCount%></font>页  
    当前<font color="#f00"><%=currentPage%></font>页  
    <%
        //当前页大于1
        if(currentPage > 1){
    %>
        <a href="?page=1">首页</a>  <a href="?page=<%=currentPage-1%>">上一页</a>
    <%      
        }
        else{
    %>
        首页 上一页 
    <%
        }
    %>
    <%//***************************** %>
    <%
        //当前页小于共分多少页
        if(currentPage < pageCount){
    %>
        <a href="?page=<%=currentPage+1%>" >下一页 </a>  <a href="?page=<%=pageCount%>">尾页</a>
    <%      
        }
        else{
    %>
        下一页 尾页 
    <%
        }
    %>
    <input type="text" name="txtCurrentPage" id="txtCurrentPage" size="3" value="<%=currentPage%>">
    <input type="button" value="GO" onclick="Jump()" /></td></tr>
    <script language="javascript" type="text/javascript">
        function Jump(){
            //通过Id查找表单  值 为空
            if(document.getElementById("txtCurrentPage").value == ""){
                //弹出对话框
                alert("请输入数字");
                //获得焦点
                document.getElementById("txtCurrentPage").focus();
                return false;
            }

            //只能输入正整数  不大于 最大页数
            //判断输入是否是数字
            var pattern=/^[0-9]*[1-9][0-9]*$/;
            var currentPage;
            currentPage = document.getElementById("txtCurrentPage").value;
            //用正则表达式 验证 输入的值   false
            if(!pattern.test(currentPage)){
                alert("请输入正整数");
                document.getElementById("txtCurrentPage").focus();
                return false;
            }
            if(currentPage > <%=pageCount%>){
                alert("请输入1到" + <%=pageCount%> + "之间的正整数");
                document.getElementById("txtCurrentPage").focus();
                return false;
            }

            location.href="?page=" + document.getElementById("txtCurrentPage").value;
        }
    </script>
</table>

<%
    conn.close();
%>


0

7个回答

不知道到底是哪里问题,各路大神看过,小弟现在这拜谢了

0

">尾页 这种写法貌似有问题,用这个试试

0

你的超链接这种写法 "?page=<%=currentPage+1%>"貌似不行

可以用这种试试:“当前页?page=<%=currentPage+1%>”

0

当前页?page=<%=currentPage+1%> 这种方式不行,

description The requested resource is not available.

谢谢

0

就是用 超链接的相对路径, 当前页是 你这个文件叫 **.jsp?page=<%=currentPage+1%>

0

用你的方法
地址栏显示
http://localhost:8080/FenYe/index.jsp?page=2

但是没有数据 没有执行sql语句 不知道为啥

0

解决了 其实就是因为 sql 语句中 没有给 伪列 起别名, 晕~ 就因为这个

不管怎样谢谢你 兄弟~(这还是我第一次发贴)

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
网络共享打印机只能打印第一页问题解决
卸载以下更新补丁:KB971633,KB961371,KB973346如果是装了OFFICE 2007 建议不要用OFFICE 2007 的SP2补丁,否则即使卸载补丁以后也不行。可以尝试将打印机——属性——高级中设置为:直接打印到打印机
easyui 的datagrid点击第二页时显示的内容和第一页相同
easyui 的datagrid点击第二页时显示的内容和第一页相同 后台也将total和所有的数据都返回给datagrid了。 这个问题这主要是没有给datagrid添加翻页的出发的事件。 完整的datagrid(HTML+easyui+Jquery+MVC+Mybatis)实现CRUD如下:HTML: —–* * 新增快递运输信息 编辑快递运输信息 删除快递运输信息
Jquery easyui的翻页无效,一直都是第一页的数据 (会显示第二页的数据 但很快有再次查询返回第一页)
点击翻页查看第二页时,会先显示第二页,但很快跳回了第一页
源代码的学习(如何学习)
源代码的学习1. 画出整个程序的流程图,理解整个程序流程的思想。画流程图的方式更让人很直接 的理解程序的整体流程,而不会被代码所干扰,让程序员总体上把握整个程序。2. 对流程各节点(函数或过程)的理解。流程的每一节点是构成整个流程的不可缺少的部份。3. 再把流程和流程各节点串起来理解整个程序,可能的话最好写出读书笔记。4. 如果想深刻的学习到源代码的精髓所在,请写一个相近的程序进行
DATATABLE 第二页没有数据
jquary 使用 DATATABLE 显示数据遇到2个问题,第一个是分页显示,iTotalRecords,iTotalDisplayRecords(这个是控制分页使用的。第二个是我点击第二页,没有显示数据,看web开发工具数据明明到页面了,最后发现php后台数组没有按下标0开始记录数据,结果发到页面,不报错也不显示,最后将php后台数组按照从下标0开始,就可以正常显示~还有一个发现,PHP数组没
ssm分页问题:第二页数据删除后自动显示第一页数据
jsp:全部删除 controller: @RequestMapping("/deleteFocusByFocusIds.action") @RequiresPermissions("focus") public ModelAndView deleteFocusByFocusIds(HttpSession session, Integer[] choose, Integer
使用window.print()方法分页打印
使用window.print()方法分页打印只需要在每页中增加以下样式属性style="page-break-after:always"例如<div style="page-break-after:always"> 第一页内容 </div> <div style="page-break-after:always"> 第二页内容 </div>page-break-after属性讲解 http:
vue和pageHelper进行分页的时候,点击搜索按钮回到第一页
分页组件如下 &amp;lt;div class=&quot;pagination&quot;&amp;gt; &amp;lt;el-pagination @size-change=&quot;handleSizeChange&quot; @current-change=&quot;handleCurrentChange&quot; :...
页面当含有多条数据时,跳转到第二页时,无法选择第二页数据记录解决
jquery新增了一个.on()方法来给元素绑定事件,具体用法如下: on(events,[selector],[data],fn) . 代码如下: $("#dataTable tbody tr").on("click", function(event){ alert($(this).text()); }); 上面这中方法对所有的这个tr绑定了事件,但是对于新
pagehelper分页查询的一个坑,明明下一页没有数据了却还是返回了数据
解决:关闭这该死的合理化,如下配置: pagehelper: # helperDialect: mysql reasonable: false # 禁用合理化时,如果pageNum&lt;1或pageNum&gt;pages会返回空数据 reasonable:false ...
关于分页查询在查询时正常,点击下一页条件丢失的情况
最近在做一个查询功能的时候,在使用继承下来的分页page时出现一个莫名其妙的原因 就是在查询时正常,当点击下一页时出现条件丢失的情况  dao层使用的mybatis框架,前端的传参是用form的post方法 --根据条件查询 --断点debug查看 --点击下一页,debug查看发现zzxsbz由null变成了&quot;&quot;,条件丢失查询总数增加 --发现在使用mybatis...
extjs 分页是碰到的问题,点击下一页事,查询条件无法传递
extjs的pagingtoolbar 点击下一页时,出现store的load时间,但是只有start和limit这两个参数,这样就出现了,点击下一页的时候,查询出 的结果和条件不符合。虽然可以通过一次性查出所有记录的方法解决,但是我更喜欢这样的方法……
bootstrap table分页后,刷新、搜索,页数没有回到第一页,出现无结果的情况
具体的其实也不太懂,红线那条应该只是设置页数,测试并不能代替'refresh' 还是看图容易懂,不喜勿喷,    
###①datatable客户端分页,全选只能选中一页(能力有限,(虽然不是服务端分页),同事-老大都不知道)+ ②【动态添加删除CheckBox的ID】
①datatable客户端分页,全选只能选中一页(能力有限,(虽然不是服务端分页),同事-老大都不知道)。对于要解决的问题:【JQuery datatables 表头复选框切换页面时保持选中的问题】====这个:https://blog.csdn.net/nihaoqiulinhe/article/details/52973249  看了还是没解决。所有页面重新加载都会执行这个回调。而且他的选择器...
jaspersoft 创建报表 第一页显示数据,第二页不显示数据
在variables中,创建了一个函数 设置这个函数放在page footer中 打印效果中,第一页数据显示,第二页数据不显示 解决方案: 设置数据的属性
jsp分页,显示上一页,下一页,首页,末页,和数据页“1,2,3,4,……”
jsp 分页显示数据,显示“页数”,“第几页”,“上一页” “下一页” “首页” “尾页”“1,2,3,4,5……”;分页效果和平时所见的分页效果相同,数据库用hibernate链接 “上一页”显示的数据和“1,2,3,4……”想对应,当前页数用不同的样式显示
织梦分页后的每一页内容是一样的
今天我在修改网站时,就遇到这样一个情况,就是我们加上了织梦分页的标签后,分页是成功了的,可是不管点击哪一页,内容都是一样的! 出现这样的情况,是因为列表页和首页调用的标签是不一样的,我们来详细说明下:        列表调用标签 应该是用list  而不是用arclist  列表页用list的话,我们用分页是没有任何效果的 --> {dede:list pagesize="10"}   
layerui 页面总页数只有一页时,不显示分页组件
找到项目“layer/lay/modules/laypage.js”文件, 找到红框里的这句代码,改为: 保存,刷新页面 ,问题解决!
python selenium爬分页(上一页,1, 2, 3, 下一页)(1)
python 如何爬 分页 from selenium import webdriver import time phantomjs_path=&quot;C:\\Users\\XXX\\Python\\MY\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe&quot; #driver = webdriver.PhantomJS(executable_path...
ASP.NET 简易多选模式【解决分页时候第一页选的值翻页之后丢失问题】
效果图 对应使用    //多选项目 function choiseProject() {     var selectValue = "";     if ($.trim($("#div_ProjectNumber").text()) != "")     {         if ($("#div_ProjectNumber
分页请求时,有新数据加入时,下一页会出现重复数据问题
    公司业务发展迅速,用户量急剧上升中,偶尔会发现这么一个问题,就是下一页的数据中总会出现上一页的几条数据。具体表现就是 注意4号和5号 第一页和第二页都出现的了这两人 为什么会造成这个问题呢?用户在查询第一页的时候,停留了一下,然后在这段时间内 又有两个用户注册了,然后请求第二页的数据的时候 排序的时候 两个新用户排在了最前面(按照注册时间排序) 所以导致4号和5号在第二次排序的时候就...
查询条件下分页应该处于第一页
在项目开发过程中,根据查询条件查询数据时应将表格分页置于第一页,查询条件之前加上一下两句话即可将分页置于第一页(我才用的easyui框架) //查询条件下分页恢复到第一页 var opts=$("#abnormalInfoDg").datagrid("options"); opts.pageNumber=1;
解决分页翻页多选框选中的数据丢失问题
问题: 分页翻页的时候上一页选中的多选框消失,想要的结果:选中下一页多选框再返回上一页的时候多选框不消失 解决思路: 解决分页翻页多选框选中的数据丢失问题的中心思想就是,找个地方存选中的多选框的值,翻页的时候也就是重新加载界面的时候再赋给多选框,存多选框的值可以用隐藏域、cookie、session等存,现在用cookie存的例子。(如果你用的是bootstrap、easyui分页插件的话,
layui分页后查询信息只能查询当页的信息
添加 curr 属性: table.reload('searchID', { where: searchform, page: { curr: 1 //重新从第 1 页开始 } });
问题记录——bootstrapTable分页后搜索时会保留在当前页的问题及解决方法
bootstrapTable分页后搜索时会保留在当前页的问题 在网上找了很多资料,都说重新设置pageNumber=1 $('#exampleTable').bootstrapTable({pageNumber:1,pageSize:10}); 上面方法亲测试过是没有用的。 后来找到一位兄台的方法原文点这里 $(&quot;#exampleTable&quot;).bootstrapTable('refresh')...
关于vue+element-ui项目的分页,返回默认显示第一页的问题解决
问题描述 当前页面如下: 然后点击页码跳到第3页,然后在第三页点击页面链接跳转到新的页面 然后在新页面点击返回按钮,返回到当前页,结果页面分页显示第一页,对应页面内容也是第一页 期望效果 从新页面返回的时候,页码和页面内容仍旧保持在跳转离开前的样子。 解决办法 ** 1**.利用localStorage或者sessionStorage将跳转页面前的currentPage存储起来,然后,再次返...
vue基于elementUi筛选后分页恢复默认第一页(也可用回显页)
问题描述:默认打开页面,分页是1;当点第二页之后再进行筛选位置,没加恢复之前 接口传的页数还是2,返回第二页的数据; 需求:当更改筛选时 添加让页数 更改为默认1; 这时要添加:current-page.sync="pageNo" 当前页 &lt;div class="pagination"&gt; &lt;el-pagination @current-c...
数据编辑后默认返回到第一页的解决方案
数据编辑后默认返回到第一页的解决方案 请看用户的反馈: 1.在箱包信息管理中,在对某个箱包做详细查询或编辑后,请显 示当前页面,不要返回到第一页,现在数据多了查找起来很困难,重复操作时间较长。 2.在操作员管理中在对人员做编辑后,请显示当前页面,不要返回到第一页,现在数据多了查找起来很困难,重复操作时间较长。 解决方案: 采用AspNetPager的URL分页技术,利用Cookie或Session保存当前页面的索引,编辑后返回到指定的页面。
修改tp5中分页从第一页开始
thinkphp/library/think/paginator/driver/Bootstrap.php 注释掉hasPage方法: 效果:
window.print分页打印
++) { var topHeight = childNodes[i].offsetTop - childNodes[i].scrollTop; var pageHeight = topHeight - level; //暂定高度为850px时进行分页,高度大于850px,则该tr被分到下一页 //appendBefore if (pageHeight &gt; 850) { var page
dwz分页组件中,一个奇怪的翻页问题的解决
dwz分页组件的翻页问题,对回车事件的响应,导致2次请求,使得翻页失效,阻止回车的默认事件,能有效解决该问题
iview分页查询时遇到的坑
简介:当后台给你返回数据 假设此时返回13条数据 状态是10条‘审核通过’ 3条‘审核失败’ 前端设置每页显示10条 下面会有两页 此时 当你点击第二页的时候 在去更改状态值 只查询‘审核失败’,此时页面数据为空白 原因:此时你给后台创的是页面2 但是呢 就三条数据 页面二肯定为空 所有 当你每次查询的时候 都要将页面重置为1  &amp;lt;template&amp;gt; &amp;lt;div&amp;gt...
easyUI分页中,如何使修改后跳转到的页面还是停留在此页面,而不是跑到分页中的第一页...
easyUI分页中,分页情况下跳转到另一页,修改资料后返回到原页数页面。今天分享一下微小成果; [color=red]基本原理[/color]是:传当前页码到另一页,然后另外一页接收再传回到原页面; 1.a.jsp下面是传参数: var grid = $('#companyListTable'); var options = grid.datagrid('getPager').da...
分页操作时,点击上一页或下一页,当返回到指定页面时,该页面被选择的复选框任然被勾中
思路:如果把当前勾选的checkbox对应的数据保存在数组或拼接字符串中,上一页或下一页会刷新页面,保存的值就没了,不能达到刷新页面我们保存的数据依然存在 因此我们可以把相应的数据保存在cookie中,只要浏览器不关闭,我们保存的数据就会存在,可以解决浏览器刷新数据丢失的问题。 解决办法:每一个uid对应唯一的checkbox,当我们选中checkbox时我们就把 这个uid保存在co
关于分页标签,上一页和下一页不可点击。
前几天遇到了分页问题。 在第一页的时候,上一页依然是一个可点击的状态。 于是开始想解决办法 页面中,上下页都套用了bootstrap中分页的“disabled” 的class,这个class具体为一个小小的禁止标志。翻页的时候,在页面中间时,上一页和下一页的disabled是取不到的,在首尾页,则取到disabled。 大体思路如下: 在ul里面设置一个id, 通过js加载页面时候取得上
PageHelper 插件。下一页一直有数据 并且是最后的数据
PageHelper的使用 情况描述 本人数据库有3条数据,前端传值pageNum=1, pageSize=2,结果没有问题。心血来潮 pageNum填了10, pageSize填了2 ,可是还是有数据。 我想要的结果是下一页直接不给数据。 看了打印的sql语句给的是4 和2 。这边在家里,出现问题的东西在公司 就不截图了。 于是我就想,肯定跟pageNum有关系。利用ctrl+shift+g 一...
bootstrapTable分页查询未返回第一页的解决方法
问题在于查询时还保留了以前的信息,导致当前页获取数据条数为0,参考一些方法后解决了这个问题,在点击查询按钮时销毁原表格,重新加载就行 $('#search').on('click', function() {     $(&quot;#table&quot;).bootstrapTable('destroy');  // 销毁原表格     //初始化表格     $table.bootstrapTable({  ...
thinkcmf 搜索分页点击下一页无法保持搜索条件
今天lz找这个bug找了一天,lz用的是thinkcmf,二次开发,先上代码: public function index(){ //    if($_SESSION['search']){ //        $search=$_SESSION['search']; //        $where['name']  = array('like', "%".$search."%");
bootstrap-table当查询后再去点击分页时,后台返回的数据是正确的,前台也显示正确了,但是当我点击分页时,列表会刷新为最初的数据,而不再是本次查询得到的数据
适用场景:一般情况下你的条件查询接口,和最初渲染列表时的接口是同一个,只是后台根据不同的参数,来给你返回不同的值而已。(适用服务器端分页)适用人群:你能看到这个说明bootstrap-table已经使用一段时间所以就直接说问题解决问题:bootstrap-table当查询后再去点击分页时,后台返回的数据是正确的,前台显示的页数也没有问题,第一页信息也没有问题,但是当我点击第二页或者其他页码时,列表...
为什么word一页没写完再写就去下一页了
如下图,有时候word会出现上一页还没写完就自动跳到下一页的情况。 解决方法 1、选中下一页的段落,右键选择“段落”; 2、将换行和分页设置中,“段中不分页”和“段前分页”前面的钩去掉; 哪两个钩去掉后,下面这段文字就上来了。 ...