Section 1. Service / Dao
1. Spring MVC
- 사용자의 요청 및 입력을 Controller 에 매핑
- 사용자의 요청에 대한 응답을 View 또는 JSON 으로 반환
2. Spring Service / Dao
- Controller / Service / Dao 객체를 Dependency Injection
- Service / Dao 계층에서 Transaction 처리
3. Spring Service / Dao 구조 1
- Interface 를 기반으로 구현하여 순차적인 개발이 아닌 독립적인 개발
- Service - Controller 에게 모든 Data 처리 관련 기능을 제공하는 담당자
- Dao - Service 객체로 인해 실제로 SQL 문을 수행하는 계층
- Service 계층은 SQL 이 아닌 java 메소드 문법 등에만 집중 / Dao 계층은 SQL 에만 집중
4. Spring Service / Dao 구조 2
- Controller 와 Service 는 N:1 관계
- Service 와 Dao 는 N:M 관계
- Dao 와 DB Table 은 1:1 관계
5. Spring Service / Dao 관련 라이브러리
- 위와 같은 복잡한 관계들을 관리하기 쉽게 지원하는 라이브러리 존재
① JDBC
② MyBatis
③ JPA