DataSource
connectionPool을 관리할 목적으로 사용되는 인터페이스
connectionPool
효율적인 서버 자원 이용을 위해 DB와 연결된 connection들을 미리 만들어 저장하는 곳
SimpleDriverDataSource
표준 JDBC DataSource 인터페이스의 간단한(simple) 구현체. bean properties(속성)을 통해 일반 JDBC Driver를 구성하고 모든 getConnection 호출에서 새로운 Connection을 반환
JDBC Driver
자바 애플리케이션과 DBMS 연동을 담당하는 인터페이스. (DBMS 종류별로 알맞는 Driver 구현체가 필요함)
DataSource 실습
기존 UserDao (ConnectionMaker 의존)
새로운 UserDao (DataSource 의존)
기존 UserDaoFactory (ConnectionMaker 의존)
새로운 UserDaoFactory (DataSource 의존)
익명클래스 적용
익명클래스
이름이 없으며, 재사용하지 않는 객체. (주로 단발성 목적으로 사용됨)
단 하나의 클래스를 상속받거나 단 하나의 인터페이스만을 구현할 수 있고, 객체를 생성해서 반환.
기존 DeleteAllStrategy(StatementStrategy 구현체)
StatementStrategy 구현한 클래스를 내부클래스로 전환
기존 AddStrategy(StatementStrategy 구현체)
StatementStrategy 구현한 클래스를 내부클래스로 전환
JdbcContext 클래스 분리
JdbcContext 클래스
UserDao 클래스
•
UserDao가 JdbcContext를 의존하게 변경됨