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


'[CODE] > Database' 카테고리의 다른 글
| [DB] MySQL DB 생성, MySQL - GitHub - eclipse 연결 (0) | 2026.05.19 |
|---|---|
| [DB] 5. 데이터베이스 프로그래밍 (0) | 2026.04.10 |
| [DB] 4. SQL 고급(2) - 뷰, 인덱스 (0) | 2026.04.09 |
| [DB] 4. SQL 고급(1) - 내장함수, NULL, 비교문, 부속질의 (0) | 2026.04.03 |
| [DB] 3. SQL 기초(2) - 부속질의, 데이터 정의어, 데이터 조작어 (0) | 2026.03.26 |