
안녕하세요. 이번시간에는
자바 프로그램을 데이터베이스와 연결시켜 주는 JDBC에 대해 알아볼게요.
JDBC
JDBC Java DataBase Connectivity 자바에서 DB에 접근(연결) 하기 위해 제공되는 표준 API로
MySQL, Oracle, MariaDB 등 다양한 Java에 연동할 수 있어요.
JDBC 역할
JDBC는 데이터베이스와 '연결, 질의, 결과, 종료'를 담당해요.
DB에 접속하고, SQL문을 작성 후 전송, SQL 결과를 Java의 객체 형태로 받을 수 있답니다.
JDBC의 필요성
Java에서는 SQL문장을 직접 실행할 수 없어요.
DB드라이버와 JDBC API를 통해 DB와 연결로
Java에 표준화된 SQL을 사용하여 DBMS의 유연성(유지보수, 효율정)을 확보할 수 있습니다.
JDBC를 사용함으로 통합된 표준 인터페이스를 제공할 수 있어요.
JDBC 동작 흐름
JDBC의 동작흐름은
[Java Application] >> [JDBC Driver 로딩] >> [DB 연결(Connection 생성)] >>
[SQL 작성 및 실행] >> [결과 처리(ResultSet)] >> [자원 해제(Connection, Statement, ResultSet close)]
간단하게 설명드리면
Java 애플리케이션 -> SQL 실행 -> DB 결과받아오기
JDBC 주요 클래스
a) DriverManager : JDBC 드라이버 로딩 및 DB 연결을 담당
b) Connection : DB와 연결된 상태를 표현하는 객체
c) Statement : SQL 실행을 위한 객체 (정적 SQL에 사용)
d) PreparedStatement : ? 파라미터를 사용할 수 있는 객체 (동적 SQL에 사용)
e) ResultSet : SELECT 결괏값을 담는 객체 (조회 결과를 처리)
JDBC의 장단점
Java만으로 DB 연동이 가능하고, 다양한 DBMS를 지원해요. 그리고 직접적인 SQL작성이 가능함으로
세세한 데이터가 조회가 가능해요.
그러나 JDBC 사용 중 SQL 코드에 직접 작성을 해버리면 유지보수가 어려워지고,
JDBC의 연결문, 해제문이 반복적으로 나오기 때문에 반복적인 코드가 많아 길어질 수 있어요.
그리고 객체지향 설계가 어려워요(테이블은 객체 구조가 아님!)
해당 단점을 보완하기 위해 JPA, MyBatis 같은 프레임워크를 교육시켜요.

여기까지 JDBC의 대해 알아봤는데요.
JDBC는 중요한 통로인 것을 알게 된 것 같아요.
'Backend > Java' 카테고리의 다른 글
| Spring Boot - Validation (0) | 2025.08.20 |
|---|---|
| Spring Boot (1) | 2025.08.17 |
| 스트림(Stream) API (5) | 2025.07.29 |
| 람다식(Lambda Expression) (4) | 2025.07.28 |
| 내부 클래스 (Inner Class) (4) | 2025.07.27 |