JDBC

[자바JDBC프로그래밍] 01 ~ 05

개발자하소서 2022. 1. 19. 23:04
728x90
반응형
SMALL

📌JDBC 연결 순서

 1. 드라이버 로드하기

 2. 연결 생성하기

 3. 문장 실행하기

 4. 결과집합 사용하기

 


📌JDBC 기본코드의 이해 

  1. Class.forName("oracle.jdbc.driver.OracleDriver");

     ---> jdbc드라이버를 class.forname을 이용하여 객체화한다.

     ---> 메모리 상에 드라이버가 올라간다.

 

  2. Connection con = DriverManager.getConnection(....) 

     -----> 연결객체를 얻는다.

 

  3. Statement st = con.createStatement();  

   ----> 실행도구를 생성한다.

   ----> 사용자로부터 요구받은 쿼리를 실행하게 된다.

 

   4. ResultSet rs = st.executeQuery(sql);

   ----> 결과집합을 얻는다. 

   ----> 쿼리를 실행한다.


📌JDBC 코드 : 첫 번째 게시글 제목 출력하기

String url = "jdbc:oracle:thin:@192.168.0.15:1521/xepdb1";

String sql = "SELECT * FROM NOTICE";

 

Class.forName("oracle.jdbc.driver.OracleDriver");

Connection con = DriverManager.getConnection(url,"id","pw)"; 

Statement st = con.createStatement(); 

ResultSet rs = st.executeQuery(sql);

 

rs.next();

 

String name = rs.getString("title");

System.out.prinf("NAME:%/n", name);

 

 

rs.close();

st.close();

con.close();

 

***닫는 것은 역순으로 닫는다***

// JAVA class Program
public static void main(String[] args){

   String url = "jdbc:oracle:thin:@192.168.0.15:1521/xepdb1";
   String sql = "SELECT * FROM NOTICE";

	Class.forName("oracle.jdbc.driver.OracleDriver");
    Connection con = DriverManager.getConnection(url,"id","pw");
    Statement st = con.createStatement();
    ResultSet rs = st.executeQuery(sql);
    // 여기까지가 데이터베이스 실행까지 끝난거다.
    // 이제 값을 가져오면 된다.
    
     if(rs.next()) { // 한줄을 가져온다. 만약 가져온 것이 있다면
        String title = rs.getString("title"); //만약, true라면 가져온 것을 출력한다
        System.out.println(title); // true라는 의미는 데이터가 있다면 여기를 출력한다는 의미다.
    }
    
    rs.close();
    st.close();
    con.close();
    
    }

}

 

📌 JDBC 코드  : 레코드의 모든 컬럼 출력하기

if(rs.next()){ // 만약 데이터에 결과값이 존재한다면

 // 참인경우 출력
   int id = rs.?("ID");
   String title = rs.?("TITLE");
   String writerid = rs.?("WRITER_ID");
   Date regDate = rs.?("REGDATE");
   String content = rs.?("CONTENT");
   int hit = rs.?("hit");
   
 System.out.prinf("id :%d, title:%s, writerld:%s, regDate:%s, content:%s, hit:%d\n,
 					id,title,writer,regDate,content,hit");


// 이것을 다 쓰게 된다면
// 첫번째 레코드만 출력이 될 것이다.
// 그 다음 레코드를 출력하길 원한다면
// 이 전부를 복사해서 밑에 붙여넣기 하면 된다.
// 하지만 모든 레코드를 출력하기 위해서
// 무작정 다 복사 붙여넣기란 불가능하므로
// 반복문을 이용해 전체 레코드를 출력한다.

}

 

 

 

 

📍 [뉴렉처 자바 JDBC프로그래밍] 강의를 보고 작성하였습니다.

 

 

728x90
반응형
LIST

'JDBC' 카테고리의 다른 글

[자바JDBC프로그래밍] 08~12 강  (0) 2022.01.21
[자바JDBC프로그래밍] 06~ 07, 25강  (0) 2022.01.20