[CODE]/Database

[DB] 6. JDBC 연결 및 개념

원°C 2026. 4. 10. 17:51

1) Eclipse에서 데이터 베이스 연결하기

기존 데이터베이스를 연결한다.

package Student; // Student 패키지에 담는다.

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Main {

    public static void main(String[] args) {
        // DB 연결 정보 설정
        String url = "jdbc:mysql://127.0.0.1:3306/데이터베이스이름";
        String username = "아이디"; // 보통 root
        String password = "비밀번호";

        // try-with-resources 구문을 사용하여 자동 자원 해제
        try (Connection conn = DriverManager.getConnection(url, username, password)) {
            System.out.println("DB 연결 성공!");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

 

2) JDBC

JDBC

: 자바 애플리케이션이 데이터베이스에 연결하고 SQL문을 실행할 수 있도록 제공되는 표준 API

➔ JDBC 드라이버만 교체하면, 자바 코드 변경 없이 다른 데이터베이스와 통신이 가능하다.

JDBC 프로그래밍 핵심 5단계

1단계: JDBC 드라이버 로드

2단계: 데이터베이스 연결(Connection)
3단계: SQL 문 실행(Statement / PreparedStatement)
4단계: 결과처리(Result Set)
5단계: 자원해제(Close)

 

SOLID 원칙

➔ 유지보수성과 확장 ↑

원칙 설명 관련 구조
S 단일 책임 원칙 하나의 클래스는 하나의 책임만 가져야 한다. DAO, DTO, View, Controller 분리
O 개방-폐쇄 원칙 확장에는 열려 있고, 변경에는 닫혀 있어야 한다. 인터페이스 기반 DAO
L 리스코프 치환 원칙 자식 클래스는 부모 클래스를 대체할 수 있어야 한다. 다형성 활용
I 인터페이스 분리 원칙 불필요한 인터페이스 의존을 피해야 한다. 역할별 인터페이스. DAO 인터페이스 정의
D 의존 역전 원칙 고수준 모듈은 저수준 모듈에 의존하면 안 된다. Service → DAO 인터페이스 주입

 

DAO(Data Access Object)

: DB 접근 전담 CRUD 처리 클래스 (JDBC를 사용하여 SQL 실행)

➔ DAO 인터페이스를 도입할 수도 있다.

ex) StudentDAO

DTO(Data Transfer Object)

: 학생 정보 객체(로직 없이 순수하게 데이터만 담겨 있다.)

➔ 택배상자처럼 데이터를 담아 다른 계층으로 전달한다. 가볍고 단순해야 한다.

ex) Student