[예시]
카페는 커피를, 빵집은 빵을 판매
필요한 경우에는 협업 관계를 통해 손님이 커피를 사면 빵을 할인할 수 있음 >> 계층 간의 소통
하지만, 빵집 알바생이 빵을 팔다가 카페에서 커피를 팔 수는 없음 >> 서로 영향을 미치지는 못함
즉, 각 계층은 자신의 책임에 맞는 역할을 수행하며, 필요에 따라 소통함을 알 수 있음
[프레젠테이션 계층]
: HTTP 요청을 받고 이 요청을 비즈니스 계층으로 전송하는 역할
: Controller가 프레젠테이션 계층 역할 수행
[비즈니스 계층]
: 모든 비즈니스 로직 처리
: Service가 비즈니스 계층 역할 수행
* 비즈니스 로직 : 서비스를 만들기 위한 로직으로, 데이터를 처리하기 위한 로직, 예외 처리 로직 등의 역할
[퍼시스턴스 계층]
: 모든 데이터베이스 관련 로직 처리
: DAO는 데이터와 상호작용하기 위한 객체
: Repository가 퍼시스턴스 계층 역할 수행
*DAO : iBatis, MyBatis에서 DAO로 불리는 DB Layer 접근자로 JPA에서는 Respository라고 칭함
* 각 계층은 개념의 영역, Controller/Service/Repository는 실제 구현을 위한 영역
'학습 기록 > 스프링 부트3 백엔드 개발자 되기[자바편]' 카테고리의 다른 글
| [03장.2] 1. build.gradle에 의존성 추가 (0) | 2023.08.28 |
|---|---|
| [03장.1] 2. 스프링부트 프로젝트 디렉터리 구성 & main 디렉터리 구성 (0) | 2023.08.28 |
| [02장.4] 2. 테스트 컨트롤러 살펴보기 (0) | 2023.08.23 |
| [02장. 4] 1. @SpringBootApplication 이해하기 (0) | 2023.08.21 |
| [02장.3] 4. 스프링 부터 3와 자바 버전 (0) | 2023.08.21 |