jsp学习-分页功能的实现
<%@ page contentType="text/html;charset=utf-8" pageEncoding="utf-8"%>
<%@ page language="java" import="java.sql.*"%> <script LANGUAGE="javascript">
<!-- 跳页函数 -->
function test() {
//这里还需要实现一些对于输入页码的安全性验证。比如不能为空,必须是数字这些。
var page = document.getElementById("goPage").value;
window.location.href = "Tem2.jsp?page=" + page; }
</script>
<%
//变量声明
java.sql.Connection sqlCon; //数据库连接对象
java.sql.Statement sqlStmt; //SQL语句对象
java.sql.ResultSet sqlRst; //结果集对象
java.lang.String strCon; //数据库连接字符串
java.lang.String strSQL; //SQL语句
int intPageSize; //一页显示的记录数
int intRowCount; //记录总数
int intPageCount; //总页数
int intPage; //待显示页码
java.lang.String strPage;
int i;
//设置一页显示的记录数
intPageSize = 2;
//取得待显示页码
strPage = request.getParameter("page");
if (strPage == null) {//表明在QueryString中没有page这一个参数,此时显示第一页数据
intPage = 1;
} else {//将字符串转换成整型
intPage = java.lang.Integer.parseInt(strPage);
if (intPage < 1)
intPage = 1;
}
//装载JDBC驱动程序
Class.forName("oracle.jdbc.driver.OracleDriver");
sqlCon = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "system", "lyjie5220");
//创建一个可以滚动的只读的SQL语句对象
sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
java.sql.ResultSet.CONCUR_READ_ONLY);//准备SQL语句
strSQL = "select * from USERCHART";
//执行SQL语句并获取结果集
sqlRst = sqlStmt.executeQuery(strSQL);
//获取记录总数
sqlRst.last();//??光标在最后一行
intRowCount = sqlRst.getRow();//获得当前行号
//记算总页数
intPageCount = (intRowCount + intPageSize - 1) / intPageSize;
//调整待显示的页码
if (intPage > intPageCount)
intPage = intPageCount;
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>分頁</title>
</head>
<body> <table border="1" cellspacing="0" cellpadding="0"> <%
if (intPageCount > 0) {
//将记录指针定位到待显示页的第一条记录上
sqlRst.absolute((intPage - 1) * intPageSize + 1);
//显示数据
i = 0;
String user_id, user_name;
while (i < intPageSize && !sqlRst.isAfterLast()) {
user_id = sqlRst.getString(1);
user_name = sqlRst.getString(2);
%>
<tr>
<td><%=user_id%></td>
<td><%=user_name%></td> </tr>
<%
sqlRst.next();
i++;
}
}
%>
</table> <form method="POST" action="">
第<%=intPage%>页 共<%=intPageCount%>页 <%
if (intPage < intPageCount) {
%>
<a href="Tem2.jsp?Page=1">首页</a> <a
href="Tem2.jsp?page=<%=intPage + 1%>">下一页</a>
<%
}
%>
<%
if (intPage > 1) {
%>
<a href="Tem2.jsp?page=<%=intPage - 1%>">上一页</a> <a
href="Tem2.jsp?Page=<%=intPageCount%>">尾页</a>
<%
}
%>
转到第:<input id="goPage" type="text" size="8"> 页 <a href="#"
onClick="test()">跳转</a> </form>
<%
String cpage = request.getParameter("cpage");
out.append(cpage);
//response.sendRedirect("Tem2.jsp?page=intPage + 1");
%> </body>
</html>
<%
//关闭结果集
sqlRst.close();
//关闭SQL语句对象
sqlStmt.close();
//关闭数据库
sqlCon.close();
%>
jsp学习-分页功能的实现的更多相关文章
- JSP实现分页功能
		
分页须知知识点: (1)JDBC2.0的可滚动结果集. (2)HTTP GET请求. 一.可滚动结果集 Connection con = DriverManager.getConnection( ...
 - 分页功能的实现——Jdbc  &&  JSP
		
@目录 什么是分页 ? 两个子模块功能的问题分析 和 解决方案 有条件查和无条件查询的影响 和 解决方案 项目案例: mysql + commons-dbutils+itcast-tools+Base ...
 - jsp、js分页功能的简单总结
		
一.概述 首先,我们要明确为何需要分页技术,主要原因有以下: 1.分页可以提高客户体验度,适当地选择合适的数据条数,让页面显得更有条理,使得用户体验感良好,避免过多数据的冗余. 2.提高性能的需要.分 ...
 - Android学习随笔--ListView的分页功能
		
第一次写博客,可能格式,排版什么的会非常不美观,不过我主要是为了记录自己的Android学习之路,为了以后能有些东西回顾.既然是为了学习,那我肯定会吸收各位大大们的知道经验,有不足的地方请指出. 通过 ...
 - Django学习笔记(12)——分页功能
		
这一篇博客记录一下自己学习Django中分页功能的笔记.分页功能在每个网站都是必要的,当页面因需要展示的数据条目过多,导致无法全部显示,这时候就需要采用分页的形式进行展示. 分页在网站随处可见,下面展 ...
 - tableau入门学习笔记--分页功能
		
最近在使用tableau来制作报表,对于tableau也是第一次接触并使用,每天学习些新的功能来记录在博客里,给他人方便,也给自己方便 tableau分页功能 很多时候由于工作表过长而出现拖拽条,如果 ...
 - 5.12-jsp分页功能学习
		
1.分页功能相关资料查询 分页须知知识点: (1)JDBC2.0的可滚动结果集. (2)HTTP GET请求. 一.可滚动结果集 Connection con = DriverManager.g ...
 - Flask学习之旅--分页功能:分别使用 flask--pagination 和分页插件 layPage
		
一.前言 现在开发一个网站,分页是一个很常见的功能了,尤其是当数据达到一定量的时候,如果都显示在页面上,会造成页面过长而影响用户体验,除此之外,还可能出现加载过慢等问题.因此,分页就很有必要了. 分页 ...
 - 基于SSM框架的简易的分页功能——包含maven项目的搭建
		
新人第一次发帖,有什么不对的地方请多多指教~~ 分页这个功能经常会被使用到,我之前学习的时候找了很多资源,可都看不懂(笨死算了),最后还是在朋友帮助下做出了这个分页.我现在把我所能想到的知识 做了一个 ...
 
随机推荐
- Sublime 插件Pylinter could not automatically determined the path to lint.py
			
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50618630 安装Sublime Te ...
 - C#-逆变 协变 反射 代码
			
首先看一段测试代码,自己写的 class Program { static void Main(string[] args) { man OneMan = new man(); var d = One ...
 - OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装
			
网上太多的例子搞 OpenLDAP + phpLDAPadmin 但是没有一个能让你成功配置起来.蛋疼得很.记录一下过程 系统版本:centos7.4 软件版本:2.4.44 超级重要,版本不对 ...
 - tddl
			
淘宝根据自己的业务特点开发了TDDL(Taobao Distributed Data Layer 外号:头都大了 ?_Ob)框架,主要解决了分库分表对应用的透明化以及异构数据库之间的数据复制,它是一个 ...
 - UNIX环境高级编程(6):文件I/O(2)
			
文件共享: UNIX系统支持在不同进程间共享打开的文件. 内核使用三种数据结构表示打开的文件.他们之间的关系决定了在文件共享方面一个进程对还有一个进程可能产生的影响: (1)每一个进程在进程表中都有一 ...
 - 【iOS开发-30】UITabBarController的几种代理方法以及结合NSUserDefaults还原上次退出时被选中视图控制器和视图控制器的顺序
			
一.UITabBarController的几种代理方法 在AppDelegate.h中加入一个协议<UITabBarControllerDelegate>.然后再AppDelegate.m ...
 - poj_1952最大下降子序列,统计个数
			
其实不算难的一道题,但憋了我好久,嗯,很爽. #include<iostream> #include<cstdio> #include<string.h> #inc ...
 - m_Orchestrate learning system---七、如何快速学好前端
			
m_Orchestrate learning system---七.如何快速学好前端 一.总结 一句话总结:看视频啊,系统看视频啊 1.如何解决单词数字太长超出边界的问题? word-wrap 把编辑 ...
 - 【英雄会】微软题目:几个bing
			
今天是元旦,开篇先祝福大家在新的一年心想事成,工作顺利,开心生活每一天 . 看到[英雄会]上出现了微软出的题目:几个bing,题目内容如下: 本届大赛由微软必应词典冠名,必应词典(Bing Dicti ...
 - C#调用webservice(二)
			
第二篇调用webservice,web服务是http://webservice.webxml.com.cn/webservices/DomesticAirline.asmx,航班查询服务 添加web服 ...