4,5,6장을 살펴보면서 스프링의 3대 핵심 기술인 IoC/DI, 서비스 추상화, AOP에 대해 간단히 살펴봤다.
스프링이 자신의 핵심 기술을 다양한 분야에 적용했듯이,
스프링을 사용하는 개발자도 스프링이 제공하는 3가지 기술을
필요에 따라 스스로 응용할 수 있어야 한다.
SQL과 DAO의 분리
UerDao에서 반복적인 JDBC 작업 흐름을 템플릿을 이용해 제거했다. 그리고 다른 부분과의 연결을 인터페이스를 통해 DI 되기 때문에 다이나믹하게 관계를 설정할 수 있다.
즉, DAO에는 깔끔하게 다듬어진 순수한 데이터 액세스 코드만 남게 했다.
하지만, DB테이블과 필드정보를 고스란히 담고 있는 SQL 문장이 남아있다.
DB의 테이블, 필드 이름과 SQL 문장의 변경으로 UserDAO를 수정하게 될 수도 있다. 이 과정에서 필드명을 수정하다가 실수를 할 수 있다.
이를 방지하기 위해 SQL문을 DAO 코드에서 적절히 분리하는 방법에 대해 살펴보자.
'Back-End > 토비의 스프링3' 카테고리의 다른 글
6-6. 트랜잭션 속성 & 6-7. 어노테이션 트랜잭션 속성과 포인트컷 (0) | 2019.06.20 |
---|---|
9.3. 스프링 웹 애플리케이션 아키텍처에 관하여 (0) | 2019.05.23 |
토비의 스프링 6장(3) - 다이나믹 프록시와 팩토리 빈 (0) | 2018.11.06 |
토비의 스프링 6장(2) - 고립된 단위 테스트 (0) | 2018.11.02 |
토비의 스프링 6장(1) - AOP 트랜잭션 코드의 분리 (0) | 2018.10.31 |