[JAVA] JDBC 내용 정리(드라이버,connection, statement, query, resultset)
2022. 11. 16. 09:49
728x90
반응형
① 1단계(JDBC 드라이버 Load)
- 인터페이스 드라이버(interface driver)를 구현(implements)하는 작업으로, 클래스의 forName()메소드를 사용해서 드라이버를 로드한다.
forName(String className) 메소드는 문자열로 주어진 클래스나 인터페이스 이름을 객체로 리턴한다.
- Oracle 드라이버 로딩
→ Class.forName("oracle.jdbc.driver.OracleDriver");
② 2단계(Connection 객체 생성)
- Connection 객체를 연결하는 것으로 DriverManager에 등록된 각 드라이버들을 getConnection(String url)
메소드를 사용해서 식별한다. 이때 url 식별자와 같은 것을 찾아서 매핑(mapping)한다.
- Oracle 사용시 Connection 객체 생성
→ Connection conn = DriverManager.getConnection(className, urlPss, idPss, pwPss);
③ 3단계(Statement/PreparedStatement/CallableStatement 객체 생성)
- sql 쿼리를 생성/실행하며, 반환된 결과를 가져오게 할 작업 영역을 제공한다.
- Statement 객체는 Connection 객체의 createStatement() 메소드를 사용하여 생성된다.
→ Statement stmt = conn.createStatement();
④ 4단계(Query 수행)
- Statement 객체가 생성되면 Statement 객체의 executeQueery() 메소드나 executeUpdate() 메소드를 사용해서 쿼리를 처리한다.
- stmt.executeQuery : recordSet 반환 => Select문에서 사용
→ ResultSet rs = stmt.execiteQuery("SELECT * FROM 소속기관");
- stmt.executeUpdate() : 성공한 row 수 반환 => Insert문, Update문, Delete문에서 사용
→ String sql = "UPDATE MEMBER1 SET PASSWD = '3579' WHERE ID = 'adb'";
stmt.executeUpdate(sql);
⑤ 5단계(ResultSet 처리)
- execueteQuery() 메소드는 결과로 ResultSet을 반환한다. 이 ResultSet으로부터 원하는 데이터를 추출하는 과정을 말한다.
- 데이터를 추출하는 방법은 ResultSet에서 한 행씩 이동하면서 getXxx()를 이용해서 원하는 필드 값을 추출하는데,
이때 rs.getString("name") 혹은 rs.getString(1)을 사용한다.
- ResultSet의 첫 번째 필드는 1부터 시작한다.
- 한 행이 처리되고 다음 행으로 이동 시 next() 메소드를 사용한다.
→ while(rs.next()) {
out.println(rs.getString("id"));
out.println(rs.getString("passwd"));
}
728x90
반응형
'IT > java' 카테고리의 다른 글
[JAVA] JRE 설명 (0) | 2022.11.16 |
---|---|
[JAVA] JDK 설명 (0) | 2022.11.16 |
[JAVA] int, long형 숫자의 자릿수 구하기 (0) | 2022.11.16 |
[JAVA] Math.pow 지수, 제곱, 거듭제곱, 몇 승 구하기 (0) | 2022.11.16 |
[JAVA] BufferedInputStream, BufferdOutputStream (0) | 2022.11.15 |