自己学jsp也有了一段时间,而且自己现在上的课是java web现在雪儿基础做了一个最简单的jsp页面,代码都放在一个页面,自己准备在改进,一步步来,这里的代码可能不是很完美,没事,下面接下来会有大概两篇关于分页的记载。今天开始我要记载自己学jsp的地点滴滴,学到一个东西觉得有点价值的我就会记载上来,多收年来还可以回忆下自己曾经学这的过程,再过几天就要靠“中级网络工程师”,可惜我们看书啊,这几天在强补以下,希望能过啊,最近是在是太多事了,哎,自己不会懂得舍取现在来说jsp分页吧。

      首先要理清自己的对于分页的理解,我在做分页的时候在网上也找了好多资料,记得都一般般,代码复制下来都是运行不了,所以我就记载的想熟悉点吧。

      要定义以下几个变量,并且要理解相应的意思,这样代码就好些了。

 int pageCount =0//所有的页数
int pageNow=1//现在显示页数即是现在显示的是第几页
int pageSize=2// 每页显示多少条记录
int rowCount=0//数据库一共有多少条记录,以便算页数

接着我们就是考虑每一页的显示情况。比如说我们每页要显示两条数据,这样我们的sql语句就要用到limit

    

 String sql ="select empno,ename,job,hiredate,sal from emp LIMIT ?,?";

  这里的两个问号表示的是起始点,和要查询的行数。再说明白点就是说我要从第五行开始查,那么查询得到的数据就是第五行和第六行,在这我们要得到前一个最后一条数据的编号,即用pageSize*(pageNow-1)

    在我的这个代码中,肯可能还有很多缺陷我有的注释了,忘记了怎么些,所以就没改,就是给pageNow赋值的时候有点问题,而且在下一页那里也不挖完美,毕竟是第一次做,还请见谅哦。我的下一篇解说将会好一些。下面就附加上所有代码。

      

 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<%
request.setCharacterEncoding("utf-8");
%> <%!
public static final String DBDRIVER="org.gjt.mm.mysql.Driver";
public static final String DBURL="jdbc:mysql://localhost:3306/mldn";
public static final String DBUSER="root";
public static final String password="mysqladmin"; %>
<%
Connection conn=null;
PreparedStatement pstmt=null;
ResultSet rs = null;
%> <%
try{
Class.forName(DBDRIVER);
conn=DriverManager.getConnection(DBURL,DBUSER,password);
System.out.print(conn);
}catch(Exception e){
} %>
<body>
<center>
<h1>员工信息</h1> <%
int pageSize=2;//每页显示多少条记录
int pageNow=1;//希望显示第几页,默认是第一页
int pageCount=0;//一共有多少页,从数据库获取值
int rowCount=0;//数据库一共有多少条记录,以便算页数 String pageNow1=request.getParameter("pageNow");//接受用户希望显示的页数
if(pageNow1!=null)
{
pageNow=Integer.parseInt(pageNow1);//这里转化位整型
} // pageNow==null?1:Integer.parseInt(pageNow1); if(conn!=null)
{
String sql="select count(*) from emp"; System.out.println(conn); pstmt=conn.prepareStatement(sql);
rs=pstmt.executeQuery();
}
if(rs!=null){
while(rs.next())
{
rowCount=rs.getInt(1);//获取一共有多少行数据
}
}
//计算总共有多少页
if(rowCount/pageSize==0)
{
pageCount=rowCount/pageSize;
}
else
{
pageCount =rowCount/pageSize+1;
} if(conn!=null){ String sql ="select empno,ename,job,hiredate,sal from emp LIMIT ?,?"; //这里自己要调试下
pstmt=conn.prepareStatement(sql);
pstmt.setInt(1,pageSize*(pageNow-1));
pstmt.setInt(2,pageSize);
rs=pstmt.executeQuery();
}
%> <table border="1">
<tr>
<td>员工ID</td>
<td>员工姓名</td>
<td>员工工作</td>
<td>员工日期</td>
<td>员工薪水</td>
</tr> <%
if(rs!=null){
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{
rs.close();
pstmt.close();
conn.close();
}catch(Exception e){}
%> </table>
<%
if(pageNow!=1)
{
out.println("<a href=index.jsp?pageNow="+(pageNow-1)+">上一页</a>");
} for(int i=1;i<=pageCount;i++)
{
out.println("<a href=index.jsp?pageNow="+(pageNow+1)+">下一页</a>");
}
%>
</center>
</body>
</html>

    代码是在myeclie上运行的,哎,耗费了我好几天的时间,附加上图片,我自己觉得那个好难看呢,if语句那里的问题。

      继续努力吧。。。以后会记录的更多。。。

这里主要是按照我自己的想法说明的,有不足请见谅。。。。。

第一次做的jsp分页,详细代码。。。。的更多相关文章

  1. python 进行后端分页详细代码

    后端分页 两个接口 思路: 1. 先得到最大页和最小页数(1, 20) --> 传递给前端, 这样前端就可以知道有多少个页数 2. 通过传递页数得到当前页对应数据库的最大值和最小值 3. 通过s ...

  2. JSP 分页代码

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

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

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

  4. Oracle+Jsp分页

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

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

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

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

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

  7. php分页类代码带分页样式效果(转)

    php分页类代码,有漂亮的分页样式风格 时间:2016-03-16 09:16:03来源:网络 导读:不错的php分页类代码,将类文件与分页样式嵌入,实现php查询结果的精美分页,对研究php分页原理 ...

  8. 百度分页样式代码 css+c#

    通过c#输出html分页代码: /// <summary> /// 返回分页Html代码 /// </summary> /// <param name="pag ...

  9. 眼下最好的JSP分页技术

     2005-08-24   来源:CSDN  作者:wanchao2001 前言     在使用数据库的过程中,不可避免的须要使用到分页的功能,但是JDBC的规范对此却没有非常好的解决.对于这个需求非 ...

随机推荐

  1. app:showAsAction 和android:showAsAction

    app:showAsAction 它有三个可选项1.always:总是显示在界面上2.never:不显示在界面上,只让出现在右边的三个点中3.ifRoom:如果有位置才显示,不然就出现在右边的三个点中 ...

  2. ORB-SLAM 代码笔记(二)

    ORB-SLAM中除了第三方库,基本没有看到使用c++11的新特性(例如别的SLAM框架中常用的智能指针,拷贝控制,泛型算法等,基本没有使用动态内存,栈内存读取速度较快),因此非常适合初学,代码很清晰 ...

  3. Virtual Host on Apache(Apache上建立虚拟主机)

    0. Introduction Usually, we want to build two or more websites on a web server, but we have only one ...

  4. MYSQL--事务处理(转)

    事务处理在各种管理系统中都有着广泛的应用,比如人员管理系统,很多同步数据库操作大都需要用到事务处理.比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如 ...

  5. 多版本python import 问题解决方案

    原文http://www.tuicool.com/articles/EnE7nm6 多版本Python共存[支持使用pip安装包] 有时特殊需要会要用到高版本的Python, 但是系统自带的版本又是很 ...

  6. LeetCode 3——无重复字符的最长子串

    1. 题目 2. 解答 2.1. 方法一 我们从前往后遍历字符串,start 代表最长子串的起始位置,一开始设置为零. 如果没有遇到重复字符,则更新子串的长度,向后遍历. 如果遇到重复字符时,则更新字 ...

  7. Android之Audio和Video

    The Android platform offers built-in encoding/decoding for a variety of common media types, so that ...

  8. BZOJ 4031 HEOI2015 小Z的房间 基尔霍夫矩阵+行列式+高斯消元 (附带行列式小结)

    原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=4031 Description 你突然有了一个大房子,房子里面有一些房间.事实上,你的房子可 ...

  9. centos7 centos6中 更改默认的系统启动级别

    centos6中更改默认的启动级别 方法: 1.vi /etc/inittab 2.找到id:x:initdefault:,我的系统是id:3:initdefault:,即默认以字符模式启动. 3.将 ...

  10. lintcode-64-合并排序数组 II

    64-合并排序数组 II 合并两个排序的整数数组A和B变成一个新的数组. 注意事项 你可以假设A具有足够的空间(A数组的大小大于或等于m+n)去添加B中的元素. 样例 给出 A = [1, 2, 3, ...