2019独角兽企业重金招聘Python工程师标准>>>
以scott方案下emp表为例:
JdbcOdbcConnection.java
OraclePaging.java
package cn.nevo.service;import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class OraclePaging {//JDBC方式实现oracle连接final String driver = "oracle.jdbc.driver.OracleDriver";final String url = "jdbc:oracle:thin:@localhost:1521:orcl";final String user = "scott";final String pwd = "tiger";Connection conn = new JdbcOdbcConnection(driver).getConnection(url, user, pwd);Statement st = null;ResultSet rs = null;//获得结果集并返回public ResultSet oraclePage(String strsql) {try {st = conn.createStatement();rs = st.executeQuery(strsql);} catch (SQLException e) {e.printStackTrace();} return rs;}//关闭数据库资源public void closeAll() {try {rs.close();st.close();conn.close();} catch (SQLException e) {e.printStackTrace();}}
}
index.jsp
<%&#64; page language&#61;"java" import&#61;"java.util.*" pageEncoding&#61;"UTF-8"%>
<%&#64;page import&#61;"java.sql.ResultSet"%>
<%
String path &#61; request.getContextPath();
String basePath &#61; request.getScheme()&#43;"://"&#43;request.getServerName()&#43;":"&#43;request.getServerPort()&#43;path&#43;"/";
%>实现oracle分页
<%//接收点击连接时候的pageNowString s_pageNow &#61; (String)request.getParameter("pageNow");int pageNow &#61; 1;if(!"".equals(s_pageNow)&&s_pageNow !&#61; null){pageNow &#61; Integer.parseInt(s_pageNow);}ResultSet rs &#61; null; //总记录数查询语句String strsql2 &#61; "select count(*) from emp";int rowcount &#61; 5; //每页显示的记录数int recordCount &#61; 0; //总共的记录数int pagecount &#61; 0; //总共显示的页数rs &#61; (oraclePaging.oraclePage(strsql2));if(rs.next()) {recordCount &#61; rs.getInt(1);if(recordCount % rowcount &#61;&#61; 0) {pagecount &#61; recordCount / rowcount;}else {pagecount &#61; recordCount / rowcount &#43; 1;}}//分页查询sql语句String strsql &#61; "select * from (select e.*, rownum rn from (select * from emp) e where rownum <&#61; " &#43; rowcount * pageNow &#43; ") where rn >&#61;" &#43; ((pageNow -1) * (rowcount) &#43; 1);rs &#61; oraclePaging.oraclePage(strsql);while(rs.next()) {out.println("姓名 入职日期 ");out.println(" ");}%>" &#43; rs.getString(2) &#43; " ");out.println("" &#43; rs.getDate(5) &#43; " ");out.println("<% //页数的链接for(int i&#61;1; i<&#61;pagecount; i&#43;&#43;) {out.print("[" &#43; i &#43; "]");}oraclePaging.closeAll();%>
启动Oracle服务器&#xff0c;通过http://localhost:8080/OraclePagingTest/访问示例&#xff1a;