메모장

Spring MVC 구조 설명 본문

Spring/개념정리

Spring MVC 구조 설명

Itchild 2024. 6. 21. 09:10
728x90
반응형

 

 

1. 사용자(Client) 의 요청

 

 

2. DispatcherServlet

 

FrontController 는 Spring에서 DispatcherServlet 으로 쓴다. "컨테이너"는 설정파일을 보고 처리하는 애이기 때문에 + .xml 이 따라 붙을 수 밖에 없다. 설정을 꼭 해줘야 되기 때문에

XML 가서 DispatcherServlet 으로 바꾸기 (HandlerMapping에 대한 di 의존 주입을 init () 메서드로 처리함)

DispatcherServlet는 객체화를 init 으로 한다.

DispatcherServlet에서는 HandlerMapping을 멤버변수로 활용함

 

command 를 넣으면 그 요청에 대한 controller 객체가 반환되고

그걸 handlerRequest 하면 어디로 가야되는지 경로가 나오고 그 경로 대로 가면 된다.

 

3. Controller

 

mappings로 MainController로 진입한다.

 

Factory 패턴 처럼 구성되어있는 HandlerMapping 사용. HandlerMapping 한테 주면

그 Controller의 .handleRequest() 으로 경로를 알 수 있다.

Controller 객체는 과거 .excute -> 현 .handleRequest() 메서드 수행

 

4. ViewResolver

 

Controller 류의 객체가 .handleRequest()의 수행결과로 String을 반환 했을때 , '어떻게 갈지'와 '어디로 갈지'를 판단해서 처리해주는 주체 이다.

~ Resolver가 나오면 특정 역할을 자동으로 처리해준다.

ViewResolver 는 자신의 멤버변수 두개를 setter로 받는다 .

어디로 가야하는지에 대한 경로를 받으면 앞에 뒤에 어떻게 갈지와 어디로 갈지를 앞뒤에 붙여서 반환해준다.

 

DispatcherServlet 에서 사용할 수 있다.

DispatcherServlet

5. View

.do 또는 .jsp 로 이동

 

728x90
반응형