반응형
Select사용하여 데이터를 검색할때 사용되는 부분
String sql = "select * from dbtest";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next()){
String name = rs.getString("name");
int age = rs.getInt("age");
double height = rs.getDouble("height");
String logtime = rs.getString("logtime");
System.out.println(name + "\t" + age + "\t" + height + "\t" + logtime);
package com.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/*
* 작업순서
* 1. Driver Loading
* -> 데이터베이스와 연결하는 드라이버 파일을 찾는다.
* -> 생성자에서 구현한다.
*
* 2. Connection
* -> 연결을 관리하는 Connection 객체를 생성한다.
*
* 3. SQL 작업처리
* -> 작업을 처리할 PreparedStatement 객체를 생성한다.
* -> select * from 테이블명;
* -> 테이블에 저장된 모든 데이터를 검색한다.
*
* 4. 반환되는 결과는 ResultSet 객체에 담는다.
*
* 5. 접속을 종료한다.
*/
class SelectTest{
//1. Driver Loading
public SelectTest(){
try{
//OracleDriver 클래스의 존재유무 검사
//없으면 예외 발생, 즉 등록되어 있지 않으면 예외 발생
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("드라이버 등록 성공");
}catch(ClassNotFoundException e){
System.out.println("드라이버 등록 실패");
e.printStackTrace();
}
}
//2. Connection
public Connection getConnection(){
Connection conn = null;
try {
/*
* Oracle과 연동 -(1 : DB URL 2 : DB USER 3 : 패스워드)
* DB URL : SQLDEVELOPER -> 계정 속성 -> 접속세부정보
* */
//오라클과 연결
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe",
"jspexam2","m1234");
System.out.println("접속 성공");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
//3. SQL 작업처리
public void selectArticle(){
//DB
Connection conn = getConnection();//호출
PreparedStatement pstmt = null;
ResultSet rs = null; //컬랙션 중 Set계열 클래스 선언
try{
/*
* select sql사용
*/
String sql = "select * from dbtest";
pstmt = conn.prepareStatement(sql); // 명령어 생성
rs = pstmt.executeQuery(); // 명령어 실행 후 rs에 반환,select문을 사용할 때 사용 (리턴값이 다르다.)
// 한줄씩 넘어가며 한 행의 구분은 Enter
while(rs.next()){ //Set내부에 데이타가 있을때까지 while
String name = rs.getString("name");
int age = rs.getInt("age");
double height = rs.getDouble("height");
String logtime = rs.getString("logtime");
System.out.println(name + "\t" + age + "\t" + height + "\t" + logtime);
}
}catch(SQLException e){
e.printStackTrace();
}finally{
try{
if(pstmt != null) pstmt.close();
if(conn != null) conn.close();
if(rs != null) rs.close();
}catch(SQLException e){
e.printStackTrace();
}
}
}
}
public class Exam3 {
public static void main(String[] args) {
SelectTest st = new SelectTest();
st.selectArticle();
}
}
결과창
반응형
'IT > DB' 카테고리의 다른 글
DB - JAVA와 DB를 연동하여 프로그래밍하기 - delete (0) | 2023.04.19 |
---|---|
DB - JAVA와 DB를 연동하여 프로그래밍하기 - update (0) | 2023.04.18 |
DB - JAVA와 DB를 연동하여 프로그래밍하기 - insert (2) | 2023.04.18 |
DB - JDBC 다루기 (0) | 2023.04.18 |
DB - Transaction(트랜잭션) (0) | 2023.04.18 |