- JDBC 32022년 07월 11일
- starryeye
- 작성자
- 2022.07.11.:26
DriverManager
JDBC가 제공한다.
라이브러리에 등록된 DB 드라이버들을 관리하며, 커넥션을 획득 할 수 있는 기능을 제공한다.
(드라이버 : DB 종류별로 JDBC의 인터페이스를 구현한 구현체)
DriverManager.getConnection();
애플리케이션에서 커넥션을 획득 하고 싶을때의 호출문이다.
DriverManager는 현재 애플리케이션의 의존하는 라이브러리에 등록된 드라이버 목록을 자동으로 인식 하여...
각 드라이버에 해당 커넥션을 획득 할 수 있는지.. 확인 후 (처리 할 수 없다면 다음 드라이버로 넘김)
커넥션을 리턴해준다.
<참고>
DriverManager에 뭔가 코드 상.. 또는 환경적으로 등록을 해야 할 것 처럼 생각되지만..
DBMS를 켜놓고 라이브러리에 추가만 해놓으면 자동으로 대상이 된다.
JDBC를 사용하여 DB에 접근하여 select 쿼리 수행 예시
DB select(search)의 예시 이다.
JDBC의 표준 인터페이스 3가지...
1. Connection 클래스,
2. PreparedStatement 클래스(Statement를 상속 받음),
3. ResultSet 클래스
를 사용하는 것을 볼 수 있다.
<참고>
MySQL DB를 사용하고 있다면
MySQL JDBC 드라이버의 MySQLConnection,
MySQL JDBC 드라이버의 MySQLStatment,
MySQL JDBC 드라이버의 MySQLResultSet
3가지가 구현체로 동작할 것이다.
getConnection() 내부에 DriverManager.getConnection(); 코드가 존재한다.
커넥션을 획득 후, DB에 전달할 SQL문을 준비 해준다.
준비된 Statement를 실행(DB에 전달)을 한다.
ResultSet을 리턴 받는다.
rs.next()로 커서를 실제 데이터 있는 곳으로 움직여준다. (false이면 데이터 없다는 뜻)
finally 구문에서
획득 했던 리소스를 정리해준다. (획득 순서의 역순으로..)
close() 함수 내부에 구현..
다음글이전글이전 글이 없습니다.댓글