배운 객체지향 기초, 컬렉션, 예외 처리, 입출력 및 JDBC 기술을 총동원하고 실무 **디자인 패턴(Design Pattern)**을 도입하여 완성도 높은 실전 자바 종합 프로젝트를 구축합니다.
1. 디자인 패턴 핵심 용어 사전 (Glossary)
- Singleton Pattern (싱글톤 패턴): 애플리케이션 실행 동안 인스턴스가 단 하나만 생성되도록 강제하는 대표적 생성 디자인 패턴입니다.
- DAO Pattern (Data Access Object): 데이터베이스 접근 및 CRUD 로직을 비즈니스 로직과 분리하여 관리하는 데이터 접근 객체 패턴입니다.
- DTO Pattern (Data Transfer Object): 계층 간(Controller, Service, DAO) 데이터 교환을 위해 순수 데이터 필드만 갖는 객체 패턴입니다.
2. 싱글톤 패턴 (Singleton) 구현 코드
public class DatabaseConnectionPool {
// 1. 단 하나의 인스턴스를 static 영역에 선언
private static DatabaseConnectionPool instance = new DatabaseConnectionPool();
// 2. private 생성자로 외부 new 생성 막기
private DatabaseConnectionPool() {
System.out.println("DB 커넥션 풀 객체가 최초 1회 생성되었습니다.");
}
// 3. 글로벌 접근 메소드 제공
public static DatabaseConnectionPool getInstance() {
return instance;
}
}
3. 실전 회원 관리 시스템 종합 프로젝트 아키텍처
// DTO 클래스
class MemberDTO {
private int id;
private String name;
public MemberDTO(int id, String name) { this.id = id; this.name = name; }
public int getId() { return id; }
public String getName() { return name; }
}
// DAO 인터페이스
interface MemberDAO {
void insert(MemberDTO member);
MemberDTO findById(int id);
}
// 메인 실행 클래스
public class FinalJavaProject {
public static void main(String[] args) {
System.out.println("=== DAVHAVE 자바 실전 시스템 가동 ===");
MemberDTO m1 = new MemberDTO(101, "홍길동");
System.out.println("등록 회원: " + m1.getName() + " (ID: " + m1.getId() + ")");
}
}
4. 자주 묻는 질문 (Q&A)
Q. 프로젝트 개발을 확장할 때 다음 단계로 학습해야 할 프레임워크는? A. 실무 자바 웹 애플리케이션 개발에서는 **스프링 프레임워크(Spring Framework / Spring Boot)**와 객체-DB 매핑 기술인 JPA / Hibernate를 학습하는 것이 전 세계 기업들의 표준 커리어 트랙입니다.