Spring의 요청 전달 과정

황승현·2023년 12월 18일
0

스프링 강의 정리

목록 보기
6/8
post-thumbnail

Spring의 요청 전달 과정

  • Dispatch Servlet, Handler Mapping, Handler Adapter는 Spring이 제공하는 영역

  • Controller, Service, Repository는 사용자가 만드는 Application Code

1. Client

  • 클라이언트(Client)는 Dispatch Servlet에 요청(Request)을 보낸다.

  • Request = HTTP(s) + Method (GET, POST, PUT, PATCH, DELETE) + URL + JSON Data

    • GET과 DELETE 메소드는 JSON 데이터를 포함하지 않는다.

2. Dispatch Servlet (Front Controller)

  • Dispatch Servlet은 Client로부터 받은 Request를 HandlerMapping에 전달한다.

3. Handler Mapping

  • Client로부터 받은 Request에 대응되는 Controller를 검색하여 Dispatch Servlet으로 응답을 보낸다.

4. Dispatch Servlet

  • HandlerMapping으로부터 응답을 받았다면 Handler Adapter에 Request에 대한 처리 요청을 보낸다.

5. Handler Adapter

  • Handler Adapter는 Controller에게 Request에 대한 처리를 요청한다.

6. Controller

7. Service

8. Repository

9. Service

  • Repository로부터 Entity를 받는다.

  • Controller에게 응답(Response)한다. ※ Controller에게 DTO를 보낸다.

10. Controller

  • Service로부터 DTO를 받는다.

  • Handler Adapter에게 Response를 보낸다. ※ DTO를 보낸다.

11. Handler Adapter

  • Handler Adpater가 응답을 Dispatch Servlet에 전달한다.

12. Dispatcher Servet

  • 최종적으로 HTTP Response 형태의 응답이 Client에 전달된다.

0개의 댓글