第一次做的jsp分页,详细代码。。。。
自己学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分页,详细代码。。。。的更多相关文章
- python 进行后端分页详细代码
后端分页 两个接口 思路: 1. 先得到最大页和最小页数(1, 20) --> 传递给前端, 这样前端就可以知道有多少个页数 2. 通过传递页数得到当前页对应数据库的最大值和最小值 3. 通过s ...
- JSP 分页代码
jsp 分页模板 后台分页代码: 说明: 在 com.zc.domain 包下: PageBean.java 文件 package cn.itcast.customer.domain; impor ...
- JSP分页显示实例(基于Bootstrap)
首先介绍一款简单利落的分页显示利器:bootstrap-paginator 效果截图: GitHub官方下载地址:https://github.com/lyonlai/bootstrap-pagina ...
- Oracle+Jsp分页
分页原理: 从jsp页面传到servlet请求中,可以获得当前点击的页数,第一次进入为首页,通过在servlet中获得的当前页数,并且设计一次性显示的内容数,就是几条信息, 并且从dao层查询到数据库 ...
- 转:JSP 分页显示数据 (Oracle)
JSP 分页显示数据 (Oracle) 标签: Oracle分页JSP分页 2013-11-19 20:40 3598人阅读 评论(1) 收藏 举报 分类: Web(11) 版权声明:本文为博主原 ...
- JSP 分页显示数据 (Oracle)
要实现分页,首先我们要做的就是如何来编写SQL语句,网上也有很多,大家可以搜一下.在这里,我们使用一种比较常用的方式来编写SQL语句.代码如下: ----分页显示 select * from (sel ...
- php分页类代码带分页样式效果(转)
php分页类代码,有漂亮的分页样式风格 时间:2016-03-16 09:16:03来源:网络 导读:不错的php分页类代码,将类文件与分页样式嵌入,实现php查询结果的精美分页,对研究php分页原理 ...
- 百度分页样式代码 css+c#
通过c#输出html分页代码: /// <summary> /// 返回分页Html代码 /// </summary> /// <param name="pag ...
- 眼下最好的JSP分页技术
2005-08-24 来源:CSDN 作者:wanchao2001 前言 在使用数据库的过程中,不可避免的须要使用到分页的功能,但是JDBC的规范对此却没有非常好的解决.对于这个需求非 ...
随机推荐
- 在List中删除符合条件的内容
objDAList.RemoveAll(s => s.daCID == "20170725152407CD");
- AWS安装CDH5.3-CentOS6.4中关键操作步骤
1.在AWS masternode 上下载cloudera-manager-installer.bin安装包 [root@ip-172-21-42-114 ~]# wget http://archiv ...
- Hystrix入门指南
Introduction 1.Where does the name come from? hystrix对应的中文名字是“豪猪”,豪猪周身长满了刺,能保护自己不受天敌的伤害,代表了一种防御机制,这与 ...
- ACE学习综述(1)
1. ACE学习综述 1.1. ACE项目的优点 可以跨平台使用,基本上可以实现一次编写,多平台运行. ACE本身不仅仅是一个简单的网络框架,对于网络框架涉及到的进程管理.线程管理等系统本身相关的内容 ...
- 快速平方根算法的javascript实现
前几天看见了一个来自雷神之槌的平方根源码,原理多方有介绍,不赘述. 源码是c语言写的,我思考后发现这样的算法在javascript中也是可以完成的. function InvSqrt(x){ var ...
- 自学MVC开发基础
由于现在面试需求,我必须有点了解MVC开发基础,MVC是一个开发框架或者是一个开发模式,MVC让软件开发的过程大致切割成三个单元,分别是:Model(模型).View(试图).Controller(控 ...
- Qt Qwdget 汽车仪表知识点拆解2 图像放大
先贴上效果图,注意,没有写逻辑,都是乱动的 这里讲下 这个小汽车的进入过程,其实这个说白了就没有技术含量了,本来应该趁着这个机会学习一下Qt的动画机制,不过随机一想,这个自己写也累不到那里去 下面说下 ...
- Qt QML之不显示标题栏、边框
原文连接:http://blog.csdn.net/u010780613 我使用的Qt版本是Qt 5.3.0,Qt Creator 是3.1.1. QML做界面实在太方便了,动画效果很不错. 创建一个 ...
- restAssured + TestNG测试接口,以下是一个get 请求。
package Elaine.Test.G.APITest; import org.testng.Assert;import org.testng.annotations.BeforeTest;imp ...
- 13-Mysql数据库----权限设置
权限管理 我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作.包括select.update.delete.update.grant等操作.那么一般情况在公司之后DBA工程师会创建一个 ...