BoostCourse
JDBC란?
Sh4869
2020. 2. 25. 11:32
학습 목표
- JDBC가 무엇인지 이해한다.
핵심 개념
- JDBC
- DriverManager
- Connection
- Statement
- ResultSet
JDBC (Java DataBase Connectivity)의 정의
- 자바를 이용한 데이터베이스 접속과 SQL문장의 실행, 그리고 실행 결과로 얻어진 데이터의 핸들링을 제공하는 방법과 절차에 관한 규약
- 자바 프로그램내에서 SQL문을 실행하기 위한 자바 API
- SQL과 프로그래밍 언어의 통합 접근 중 한 형태
자바는 표준 인터페이스인 JDBC API를 제공한다. 데이터베이스 벤더, 또는 기타 써드파티에서는 JDBC인터페이스를 구현한 드라이버를 제공한다.
JDBC 환경 구성
- JDK 설치
- JDBC드라이버 설치 - Maven에 다음과 같은 의존성을 추가
JDBC를 이용한 프로그래밍 방법
- 1단계 : import java.sql.*;
- 2단계 : 드라이버를 로드한다 -> 반드시 선행되어야 함
- 3단계 : Connection 객체를 생성한다. -> DB에 접속
- 4단계 : Statement 객체를 생성 및 질의 수행 -> select * from ~ 등 쿼리문 생성 및 실행
- 5단계 : SQL문에 결과물이 있다면, ResultSet객체를 생성한다.
- 6단계 : 모든 객체를 닫는다. -> 열었던 반대 순서로 닫는다.
JDBC 클래스의 생성 관계
JDBC사용 - 단계별 설명
1. import
2. 드라이버 로드
- forName 메소드 - 객체를 메모리에 올려줌
- 안에 들어가는 String은 어떤 db벤더를 이용하느냐에 따라 달라진다.
3. Connection 얻기
- dburl은 어떤 db를 사용하느냐에 따라 달라진다.
4. Statement 생성
5. 질의 수행
6. ResultSet으로 결과 받기
7. close - > 연 순서와 반대로
JDBC 사용 예제
코드가 복잡해보이지만, 사실 위에서 배운 단계들을 그대로 따르고 있음을 볼 수 있다. JDBC를 이용하는 방법은 각각의 단계와 사용법이 정해져 있으므로 이를 사용하기 위해선 정해진 규칙을 지켜가며 코드를 작성하면 된다. 즉, 세세한 코드는 사용에 따라 다를 수 있으나 전체적인 코드는 어디서 사용하던 비슷한 형태를 띄게 된다는 것이다.
이러한 반복되는 절차와 코드를 손쉽게 처리해주는것이 framework의 기능 중 하나이다. 우리는 JDBC의 동작원리를 이해하고, 실제 구현은 spring framework를 이용하여 구현 할 것이다. 그러나 동작원리를 알고 쓰는것과 모르고 쓰는것은 매우 큰 차이가 있으므로 JDBC의 근본적인 동작원리를 잘 익혀두는것은 중요한 일이다.