- DispatcherServlet가 Client요청을 받음 (중앙 제어실과 같음)
- HandlerMapping이 알맞은 Controller를 찾음
- HandlerMapping에 실행할 Controller의 메서드를 찾음
- Controller의 메서드를 실행하며 그 결과 Model로서 DispatcherServlet에 반환
- ViewResolver는 알맞은 JSP파일을 찾음
- View는 JSP파일을 Model의 정보를 토대로 Client에게 반환
- @Controller : 이 어노테이션을 붙이면 servlet-context.xml에서 이것을 인식하여 컨트롤러로 등록함.
- @RequestMapping : 스프링은 HandlerMppaing에 의해 컨트롤러가 결정된다. 이 컨트롤러에서 HandlerAdapter에 의해 실행 메서드가 결정되는 데 @RequestMapping 어노테이션이 그 정보를 제공해 준다. value에 해당하는 url이 GET 방식으로 요청이 들어올 때 해당 메서드를 실행한다.
https://engkimbs.tistory.com/688?category=767795
요청
client 요청
Dispatcher Servlet에서 HandlerMapping을 통해 해당 요청에 맞는 핸들러를 찾음
찾은 핸들러를 HandlerAdapter를 통해 실행 후 Controller에서 처리
Controller에선 Service에서 로직을 처리하며 필요한 데이터는 Repository를 통해 접근
결과로 반환된 View를 Dispatcher Servlet을 통해 View Resolver로 전달
View Resolver는 jsp 정보를 찾은 후 View로 렌더링
응답
------------------
DispatcherServlet -> 설정 파일 로딩 -> 스프링 컨테이너 생성 -> 스프링 컨테이너 안에 빈으로 설정된 HandlerMapping, HandlerAdapter, 컨트롤러, ViewResolver 객체 이용 그리고 이렇게 생성되는 스프링 컨테이너는 WebApplicationContext 컨테이너이다.
Request -> DispatcherServlet -> HandlerMapping -> (Controller -> Service -> DAO -> DB -> DAO -> Service -> Controller) -> DispatcherServlet -> ViewResolver -> View -> DispatcherServlet -> Response
https://show400035.tistory.com/132
-----------------
https://dailyheumsi.tistory.com/159
http://wonwoo.ml/index.php/post/1582
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sks6624&logNo=220794528484
'JAVA > Spring Framework' 카테고리의 다른 글
spring HandlerMapping - DispatherServlet설정 (0) | 2021.06.01 |
---|---|
spring viewResolver - DispatherServlet설정 (0) | 2021.06.01 |
Spring Bean Container (0) | 2021.05.31 |
생성자 주입을 @Autowired를 사용하는 필드 주입보다 권장하는 하는 이유 (0) | 2021.05.31 |
SOLID (0) | 2021.01.19 |