Ch1 - 1.1.1
Ch1 - 1.1.2
Ch1 - 1.1.3
Ch1 - 1.2.2

getConnection 리팩토링
Ch1 - 1.2.3

N사 D사 DAO 분리
Ch1 - 1.3.3

ConnectionMaker 인터페이스 적용
UserDao.main()를 UserDaoTest 클래스로 추출해서 의도와 목적에 맞게 소스코드 분리
Ch1 - 1.4.2

리스트 1-14 UserDao의 생성 책임을 맡은 팩토리 클래스
리스트 1-15 팩토리를 사용하도록 수정한 UserDaoTest
그림 1-8 오브젝트 팩토리를 활용한 구조  : http://www.flickr.com/photos/dkkang1018/12446266563/
Ch1 - 1.5.1

리스트 1-18 스프링 빈 팩토리가 사용할 설정정보를 담은 DaoFactory 클래스
리스트 1-19 애플리케이션 컨텍스트를 적용한 UserDaoTest
그림 1-9 애플리케이션 컨텍스트가 동작하는 방식 : http://www.flickr.com/photos/dkkang1018/12446765355/
Ch1 - 1.6.4

리스트 1-20 직접 생선한 DaoFactory 오브젝트 출력 코드
리스트 1-21 스프링 컨텍스트로부터 가져온 오브젝트 출력 코드
그림 1-15 CountingConnectionMaker를 적용한 후의 런타임 오브젝트 의존관계 : http://www.flickr.com/photos/dkkang1018/12447071273/
Ch1 - final

리스트 1-42 UserDao.java : DataSource를 사용하는 UserDao
리스트 1-44 DaoFactory.java : DataSource 타입의 빈을 DI 받는 userDao() 빈 정의 메소드
리스트 1-48 DataSource를 적용 완료한 applicationContext.xml