Programming/Spring

Spring 의 기본 동작순서와 구조 MVC

긍정왕웹서퍼 2021. 10. 8. 23:58
728x90

먼저 스프링의 기본 동작순서와 구조를 살펴보자.

Spring 동작구조와 순서

 

1. Client : URL 로 접근하여 정보를 요청한다.

2. View : 화면단에서 보여주기 위해 요청을 전송

3. DispatcherServlet : (web.xml 에 포함, Spring에서 제공) 해당 요청을 Mapping 한 컨트롤러가 있는지 검색한다.

4. HandlerMapping : (xxx.xml 에 포함[Servlet설정파일] Spring 에서 @RequestMapping()을 통해 제공 ) 처리 요청 - Bean등록

5. Controller : (@RequestMapping(value="ex.do")) DTO(데이터 전송 객체)를 이용해 Data를 전송 

6. Service : DTO를 이용해 Data를 전송

7. DAO : (Data Access Object) DTO를 이용해 Data를 전송

8. DB : DTO를 이용해 받은 Data를 데이터베이스에서 가공해 반환

9. DAO : DTO를 이용해 반환된 Data를 전송

10. Service : DTO를 이용해 반환된 Data를 전송

11. Controller : 클라이언트의 요청 처리하고 결과를 출력한 View의 이름을 리턴 

12. DispatcherServlet : 컨트롤러에서 보내온 View 이름을 토대로 처리하고 View를 검색

13. ViewResolver : (web.xml에 포함, Spring 제공) 처리결과를 View에 송신 

14. DispatcherServlet : 처리결과가 포함된 View를 DispatcherServlet 에 송신

15. Client : 최종 결과를 출력 

 

위 번호순대로 요청에서 처리까지 값이 전달되며 프로세스가 이루어진다. 

 

여기서 크게 4가지로 분류해 관리하는데, 

먼저

View 에서 보여지는 부분을 관리하며

Spring 이 View와 Controller 의 데이터를 주고받을 수 있게 DistpatcherServlet, HandlerMapping, ViewResolver등을 제공하며

Controller 에서 View 와 model 사이에 통신역할을 하고, 

Model 에서 Service, DAO 를 이용해 비즈니스 로직 처리와 데이터를 처리하게 된다.