明天要考网络工程师了,而且这两天校运会,把那个分页的完善了下,明天考试,祈祷吧,我根本都没看书啊,所以只能去长见识了。100大洋啊,下个学期我想考考证了,不然以后出去麻烦了。呵呵,不多说还是说说自己对分页的理解吧。

    这次的代码在上次的代码上基本是上没有什么变动只是对那种翻页做了下改进啊,以下是说明。

 <%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.sql.*"%>
<html>
<head>
<title>www.mldn.cn,高端java培训</title>
<style type="css/text">
.wh
{
font-size:22px;
font-weight:bold;
} </style>
<script language="JavaScript">
function go(num){
document.getElementById("npage").value=num;
document.myform.submit();
} </script> </head>
<body>
<%!public static String DBDRIVER = "org.gjt.mm.mysql.Driver";
public static String DBURL = "jdbc:mysql://localhost:3306/test";
public static String DBUSER = "root";
public static String DBPASS = "adminmysql";%> <%
Connection conn = null;//定义链接对象
PreparedStatement pstmt = null;
ResultSet rs = null;
%>
<%
try {
Class.forName(DBDRIVER);
conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS);
} catch (Exception e) {
}
%> <%
int pageSize = 3;//定义每一页显示多少条
int pageNow = 1;//现在显示的是第多少页
int rowCount = 0;//总共有多少行数据
int pageCount = 1;//一共有多少页
int list_num[] = { 1, 3, 5, 10, 20, 30 }; pageNow = request.getParameter("npage") == null ? pageNow : Integer
.parseInt(request.getParameter("npage")); pageSize = request.getParameter("select_size") == null ? pageSize
: Integer.parseInt(request.getParameter("select_size"));//接受pageSize的大小 String sql = "select count(empno) from emp";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if (rs.next()) {
rowCount = rs.getInt(1);//获取一共获得多少条数据
} if (rowCount % pageSize == 0) {
pageCount = rowCount / pageSize;
} else {
pageCount = rowCount / pageSize + 1;
} String sql2 = "select empno,ename,job,hiredate,sal from emp limit ?,?";
pstmt = conn.prepareStatement(sql2);
pstmt.setInt(1, (pageNow - 1) * pageSize);
pstmt.setInt(2, pageSize);
rs = pstmt.executeQuery();
%>
<!-- -->
<center>
<h1>员工信息</h1>
<hr>
<form action="emp_fenye.jsp" name="myform" method="post">
<input type="button" value="第一页" onclick="go(1)"
<%=pageNow == 1 ? "disabled" : ""%>> <input type="button"
value="上一页" onclick="go(<%=pageNow - 1%>)"
<%=pageNow == 1 ? "disabled" : ""%>> <input type="button"
value="下一页" onclick="go(<%=pageNow + 1%>)"
<%=pageNow == pageCount ? "disabled" : ""%>> <input type="button"
value="尾页" onclick="go(<%=pageCount%>)"
<%=pageNow == pageCount ? "disabled" : ""%>> <input type="hidden"
name="npage" value="1">跳转到 <select name="page_select"
onchange="go(this.value)">
<%
for (int i = 1; i <= pageCount; i++) {
%>
<option value="<%=i%>" <%=i== pageNow ? "selected" : ""%>><%=i%>
<%
}
%> </select>页 每页显示<select name="select_size" onchange="go(1)"> <%
for (int i = 0; i < list_num.length; i++) {
%>
<option value="<%=list_num[i]%>"
<%=list_num[i] == pageSize ? "selected" : ""%>><%=list_num[i]%>
<%
}
%> </select>条
</form>
<table border="1" bgcolor="F2F2F2">
<tr>
<td>员工ID</td>
<td>员工姓名</td>
<td>员工工作</td>
<td>员工应聘时间</td>
<td>员工工资</td>
</tr> <%
while (rs.next()) {
%>
<tr>
<td><%=rs.getInt(1)%></td>
<td><%=rs.getString(2)%></td>
<td><%=rs.getString(3)%></td>
<td><%=rs.getDate(4)%></td>
<td><%=rs.getFloat(5)%></td>
</tr>
<%
}
%>
<%
try { pstmt.close();
conn.close();
} catch (Exception e) {
}
%> </table>
</center>
</body>
</html>

    对其中部分代码说明:

    

 每页显示<select name="select_size" onchange="go(1)">

                     <%
for(int i=0;i<list_num.length;i++){
%>
<option value="<%=list_num[i]%>"
<%=list_num[i]==pageSize?"selected":""%>><%=list_num[i]%>
<%
}
%></select>条

    在这里,一点下拉框就会触发go()事件就会重新加载整个页面,那么此时在request那里就可以接受到pageSize的大小,这句话<%=list_num[i]==pageSize?"selected":""%>就可以进行判断selected的作用只是用于显示。当时我在这里想了半天都没想明白,所以就把这句话给加上了。

    本来我的代码都是在编辑器中编辑的,所以是在网页上运行,但是我在IE上运行的时候脚本调试不了,在火狐和google浏览器上的调试结果额差不多,都是js那里的问题。所以最后我又给弄近eclipse里面运行才好,今天我又看到了一种分页,是数字分页,暂时我还不会,希望有时间研究一下。至于调用servlet的,应该不是很难的,只要在jsp页面里接收servlrt里面设置的参数(list)就可以了吧。

jsp分页完善版的更多相关文章

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

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

  2. 基于Bootstrap的DropDownList的JQuery组件的完善版

    在前文 创建基于Bootstrap的下拉菜单的DropDownList的JQuery插件 中,实现了DropDownList的JQuery组件,但是留有遗憾.就是当下拉菜单出现滚动条的时候,滚动条会覆 ...

  3. WPF 自定义 MessageBox (相对完善版)

    WPF 自定义 MessageBox (相对完善版)     基于WPF的自定义 MessageBox. 众所周知WPF界面美观.大多数WPF元素都可以简单的修改其样式,从而达到程序的风格统一.可是当 ...

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

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

  5. Jsp分页的简单制作

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

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

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

  7. WPF 自定义 MessageBox (相对完善版 v1.0.0.6)

    基于WPF的自定义 MessageBox. 众所周知WPF界面美观.大多数WPF元素都可以简单的修改其样式,从而达到程序的风格统一.可是当你不得不弹出一个消息框通知用户消息时(虽然很不建议在程序中频繁 ...

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

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

  9. JSP 分页代码

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

随机推荐

  1. 联想ThinkPad S3-S440虚拟机安装,ubuntu安装,Hadoop(2.7.1)详解及WordCount运行,spark集群搭建

    下载ubuntu操作系统版本 ubuntu-14.10-desktop-amd64.iso(64位) 安装过程出现错误: This kernel requires an X86-64 CPU,but ...

  2. MVC使用ajax取得JSon数据

    为了在view中获取模型中的数据,用ajax异步模式读取数据,再用json返回的view中. 1.controller中: [HttpPost] public ActionResult GetAjax ...

  3. Java Swing 图形界面开发(目录)

    Java Swing 图形界面开发(目录) 2017年05月30日 23:50:42 阅读数:5228 本文链接: http://blog.csdn.net/xietansheng/article/d ...

  4. 【C#】 RBAC 权限框架

    [C#] RBAC 权限框架 一. 名词解释 1. 用户 : 登录的账号, 和角色挂钩,可拥有多个角色 2. 角色 : 账号所属的角色, 和权限挂钩,可拥有多个权限 3. 权限 : 角色拥有的操作权限 ...

  5. android service笔记

    1.service 默认在主线程运行,所以不能在service中直接做访问网络,操作文件等耗时操作,要另外开启线程 2.通过startservice开启的服务,一旦服务开启,这个服务和开启他的调用者之 ...

  6. fildder抓包工具详解

    fildder页面介绍名称和含义 名称 含义 # 抓取HTTP Request的顺序,从1开始,以此递增 Result HTTP状态码 Protocol 请求使用的协议,如HTTP/HTTPS/FTP ...

  7. Django数据模型--表关系(一对多)

    一.一对一关系 使用方法:models.ForeignKey(要关联的模型) 举例说明:年级.教师和学生 from django.db import models class Grade(models ...

  8. linux下easy_install的安装与使用详解

    Python中的easy_install工具用起来非常好用,它的作用类似于Php中的pear,或者Ruby中的gem,或者Perl中的cpan. 1.easy_install安装 如果想使用easy_ ...

  9. 找jar包的网址

    http://search.maven.org/#search%7Cga%7C1%7Cmybatis http://mvnrepository.com/

  10. XJOI NOIP模拟题2

    第一题 组合计数 分析: 从前往后一位一位的计算 先算第一位比t小的数目,再算第一位与t[1]相同,第2位比t小的个数以此类推 先预处理一个数组h,h[i]表示从1~it串与s串不同的位数 对于第i位 ...