JDBC 의 페이지 조회
지식 포인트:JDBC 의 페이지
jar 가방:
commons-collections4-4.0.jar
commons-dbcp-1.4.jar
commons-pool-1.6.jar
Oracle 11g 11.2.0.1.0 JDBC_ojdbc6.jar
코드 는 모두 자신 이 쓴 연결 탱크 기술 을 바탕 으로 이미 공유 되 었 다.
url:http://blog.csdn.net/coder_hello_world/article/details/78515974
JDBC 에 서 는 페이지 기술 을 사용 하여 데이터 읽 기 중의 데 이 터 를 처리 합 니 다.
홈 페이지 에서 무언 가 를 검색 하 는 것 처럼 다 보 여 주 는 것 은 아니 지만 페이지 가 만들어 집 니 다.
페이지 나 누 기 알고리즘:
start=(page-1)*pageSize-1
end = page*pageSzie;
package com.gaosheng.day07;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.Scanner;
import com.gaosheng.day02.JDBCPool1;
/*
*
* @author 89155
*
*/
public class PageDemo {
@SuppressWarnings("all")
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
//
System.out.println(" ");
String tableName = scanner.nextLine().trim();
//
System.out.println(" ");
String colName = scanner.nextLine().trim();
//
System.out.println(" :");
int pageSize = Integer.parseInt(scanner.nextLine());
//
System.out.println(" :");
int page = Integer.parseInt(scanner.nextLine());
try{
Connection connection
= JDBCPool1.getConnection();
/*
* :SELECT * FROM EMP ORDER BY ENAME;
* :
* :
*/
//
String pageSql = "SELECT * FROM("
+ "SELECT ROWNUM RW,E.* FROM "
+ "(SELECT * FROM "
+tableName+" "
+ "ORDER BY "+colName+") E) "
+ "WHERE RW BETWEEN ? AND ?";
/* String pageSql =
"SELECT * FROM("
+ "SELECT ROWNUM RW,E.* FROM "
+ "(SELECT * FROM "
+tableName+" "
+ "ORDER BY "+colName+") E) "
+ "WHERE RW >=? AND RW <=?";*/
System.out.println(pageSql);
PreparedStatement pstate = connection.prepareStatement(pageSql);
//
int strat = (page - 1)*pageSize+1;
int end = page*pageSize;
pstate.setInt(1, strat);
pstate.setInt(2, end);
ResultSet rs = pstate.executeQuery();
while(rs.next()){
int sal = rs.getInt("SAL");
String ename = rs.getString("ENAME");
System.out.println(sal+":"+ename);
}
}catch(Exception e){
e.printStackTrace();
}finally{
JDBCPool1.closeConnection();
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Oracle 생성 향후 3일간의 전체 시점 (단계 상세)수요: X 좌표축 시간은 모두 정시 시간으로 앞으로 3일 동안의 예측을 보여준다(x 축은 앞으로 3일 동안의 정시 시간을 보여준다), 3시간마다 한 눈금, 가로 좌표는 모두 24개의 눈금을 보여준다 1단계: 현재 시...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.