jsp+oracle实现数据库内容以表格形式在前台显示(包含分页)
jsp+oracle实现数据库内容以表格形式在前台显示(包含分页)
在文件夹内新增list_emp.jsp
代码如下:
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.sql.*"%>
<html>
<head><title>java study</title></head>
<body>
<%!
//定义数据库驱动程序
public String DBDRIVER="oracle.jdbc.driver.OracleDriver";
//数据库连接地址
public String DBURL="jdbc:oracle:thin:@localhost:1521:yy";
public String DBUSER="scott";
public String DBPASS="tiger"; %>
<%
Connection conn=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
%>
<%
try{
Class.forName(DBDRIVER);
conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS);
int pageSize=3;
int pageNow=1;//默认显示第一页
int rowCount=0;//总笔数
int pageCount=0;
String s_pageNow=(String)request.getParameter("pageNow");
if(s_pageNow!=null){
pageNow = Integer.parseInt(s_pageNow);
}
String sql1 = "select count(*) from emp";
pstmt=conn.prepareStatement(sql1);
rs=pstmt.executeQuery();
if(rs.next()){
rowCount = rs.getInt(1);
}
if(rowCount%pageSize==0){
pageCount = rowCount/pageSize;
}else{
pageCount = rowCount/pageSize + 1;
}
String sql="SELECT empno,ename,job,hiredate,sal FROM (select a1.*,rownum rn from (select * from emp order by sal desc) a1 WHERE rownum<="+pageSize*pageNow+") where rn>="+((pageNow-1)*pageSize+1);
pstmt=conn.prepareStatement(sql);
rs=pstmt.executeQuery();
%>
<center>
<table border="1" width="80%">
<tr>
<td>雇员编号</td>
<td>雇员姓名</td>
<td>雇员工作</td>
<td>雇员日期</td>
<td>雇员工资</td>
</tr>
<%
while(rs.next()){
int empno=rs.getInt(1);
String ename=rs.getString(2);
String job=rs.getString(3);
java.util.Date date=rs.getDate(4);
float sal=rs.getFloat(5);
%>
<tr>
<td><%=empno%></td>
<td><%=ename%></td>
<td><%=job%></td>
<td><%=date%></td>
<td><%=sal%></td>
</tr>
<%
}
%>
</table>
<form Action= "" method= "post">
<%
for(int i=1;i<=pageCount;i++){
out.println("<a href=list_emp.jsp?pageNow="+i+">["+i+"]</a>");
}
if(pageNow != 1){
out.println( " <a href=list_emp.jsp?pageNow=1>首页</a> ");
out.println( " <a href=list_emp.jsp?pageNow="+(pageNow - 1)+">上一页</a> ");
}
if(pageNow != pageCount){
out.println( " <a href= list_emp.jsp?pageNow="+ (pageNow + 1)+"> 下一页</a>");
out.println( " <a href= list_emp.jsp?pageNow="+ pageCount+"> 最后一页</a>");
}
%>
</form>
</center>
<%
}catch(Exception e){
System.out.println(e);
}
finally{
try{
rs.close();
pstmt.close();
conn.close();
}catch(Exception e){
System.out.println(e);
}
}
%>
</body>
</html>
来源于 :http://blog.csdn.net/josephiney/article/details/6989841
jsp+oracle实现数据库内容以表格形式在前台显示(包含分页)的更多相关文章
- Java Web中将oracle的数据库内容以表格形式展现到页面中(分页展示)
分页SQL语句: ----分页显示 select * from (select rownum as r,t.* from () ; 查询的结果如下: 这个SQL,使用了三层嵌套的查询方式: 1)最内层 ...
- js,jsp里将数据库Date类型获取出来后格式化显示于界面
js:new Date(rowdata.updateTime).format("yyyy-MM-dd hh:mm:ss") jsp: <fmt:formatDate valu ...
- atitit.sql server2008导出导入数据库大的表格文件... oracle mysql
atitit.sql server2008导出导入数据库大的表格文件... 1. 超过80M的文件是不能在查询分析器中执行的 1 2. Oracle ,mysql大的文件导入 1 2.1. 使用sql ...
- java中list集合的内容,如何使用像数据库中group by形式那样排序
java中list集合的内容,如何使用像数据库中group by形式那样排序,比如:有一个 List<JavaBean> 他中包含了一些如下的内容JavaBean:name mone ...
- 利用PHP实现登录与注册功能以及使用PHP读取mysql数据库——以表格形式显示数据
登录界面 <body><form action="login1.php" method="post"><div>用户名:&l ...
- JSP连接MySQL数据库问题
之前写了一大段,还说了一下具体JDBC连接数据库API的具体包的基本知识,哪知道自己手残不小心按了删除按钮.结果去看自动保存记录时,就只剩下下面这段了.好吧,其实最主要最核心的也就是下面这点了.具体如 ...
- oracle 11g 数据库恢复技术 ---01 重做日志
一 redo log Oracle数据库中的三大核心文件分别是数据文件(data file).重做日志(redo log)和控制文件(control file).数据文件保证了数据库的持久性,是保存修 ...
- MySql Oracle SqlServer 数据库的数据类型列表
Oracle数据类型 一.概述 在ORACLE8中定义了:标量(SCALAR).复合(COMPOSITE).引用(REFERENCE)和LOB四种数据类型,下面详细介绍它们的特性. 二.标量(SCA ...
- 已知数据库中存在表tb_book2,通过在图书信息界面填写书本的基本信息,然后提交后写入数据库中的表格中。需要对提交的信息进行修改,信息填入不能为空,为空则则有提示。
jsp结合SQLSERVER向数据库中的表添加图书信息. 已知数据库中存在表tb_book2,通过在图书信息界面填写书本的基本信息,然后提交后写入数据库中的表格中.需要对提交的信息进行修改,信息填入不 ...
随机推荐
- 技巧:利用 Workflow 显示附近的免费 Wi-Fi
得益于 Workflow 自 1.5.3 版本起更新的 Get Content of URL 动作,该 App 的潜力得到了极大的提升.本文分享一种有趣的用法,搜寻附近的免费 Wi-Fi 并择一显示在 ...
- 怎么在ZBrush中渲染漫画风格的插画
创建“漫画插画”的外观和感觉想必一定很有趣吧,但是,获得想要的精确外观有时也会令人相当沮丧,因此了解一些基本原则,创建类似于ZBrush漫画MatCaps的作品很有必要. 若有疑问亦或者想查看具体的视 ...
- leetcode - Merge Sorted Array (run time beats 100.00% of cpp submissions.)
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode ...
- AutoIT 实现Firefox上传文件
Firefox浏览器文件上传代码如下: ;upload file Func _UploadFile($file) AutoItSetOption("WinTitleMatchMode&quo ...
- android 知识点收集
1. 计算时间流逝请使用SystemClock.elapsedRealtime... currentTimeMillis会受系统时钟影响 //未验证 2. android app私有文件的目录 ...
- windows客户机连接gerrit的一个报错处理
gerrit环境部署在linux服务器,windos客户机连接gerrit进行代码操作: 在windows客户机下载Git客户端 在“Git Bash”里使用 ”ssh-keygen -t rsa - ...
- f2fs解析(六)
f2fs中有对一个bitmap进行操作的函数,感觉很巧妙,和大家分享一下: 1333 static inline void f2fs_change_bit(unsigned int nr, char ...
- WinForm中异步加载数据并使用进度条
在WinForm程序中,有时会因为加载大量数据导致UI界面假死,这种情况对于用户来说是非常不友好的.因此,在加载大量数据的情况下,首先应该将数据加载放在另一线程中进行,这样保证了UI界面的响应:其次可 ...
- 如何在 kernel 和 hal 层读取同一个标志
很多时候我们需要从 HAL 层(Hardware Abstract Layer)传一个标志给 kernel 层.一般这种传递是不能直接通过定义全局变量来实现的. 此时可以通过读写文件来实现该标志. 譬 ...
- 3D数学基础:3D游戏动画中欧拉角与万向锁的理解
首先来看一下什么是欧拉角(Euler angles)?构件在三维空间中的有限转动,可依次用三个相对转角表示,即进动角.章动角和自旋角,这三个转角统称为欧拉角.——引自百度百科莱昂哈德·欧拉用欧拉角来描 ...