티스토리 뷰

Spring

Spring MVC

snail voyager 2020. 5. 16. 23:48
728x90
반응형

MVC

Model-View-Controller 소프트웨어 아키텍처 패턴
사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다.

Spring MVC

  • @EnableWebMvc : 스프링 MVC 사용을 위한 다양한 Bean 설정을 추가 해준다

  • WebMvcConfigurer 인터페이스 : 스프링 MVC의 개별 설정을 조정할 때 사용

    • DefaultServlet, ViewResolvers
  • DispatcherServlet은 웹 브라우저의 요청을 받기 위한 창구 역할, 요청 흐름을 제어하는 역할
    스프링 컨테이너를 생성 : HandlerMapping, HandlerAdapter, ViewResolver, Controller Bean

Spring MVC 동작 순서

  1. 웹 브라우저로부터 요청이 들어오면 DispatcherServlet은 처리할 컨트롤러 검색을 HandlerMapping에 요청
  2. HandlerMapping은 처리할 컨트롤러 Bean 객체를 DispatcherServlet에 전달
  3. DispatcherServlet은 HandlerAdapter에게 요청 처리를 위임
  4. HandlerAdapter는 컨트롤러의 알맞은 메서드를 호출해서 처리 후 DispatcherServlet에 ModelAndView로 리턴
  5. DispatcherServlet은 결과를 보여줄 뷰를 찾기 위해 ViewResolver 사용
  6. ViewResolver는 ModelAndView 안에 View 객체를 찾아 리턴
  7. DispatcherServlet은 View 객체에게 응답 결과 생성을 요청
728x90
반응형

'Spring' 카테고리의 다른 글

[Spring] Filter vs. Interceptor  (0) 2020.05.19
Session, Cookie  (0) 2020.05.18
Spring JDBC (Java DataBase Connection)  (0) 2020.05.16
AOP (Aspect Oriented Programming)  (0) 2020.05.12
의존성 주입 (Dependency Injection)  (0) 2020.05.11
반응형
300x250