스프링 프로젝트의 구조와 어떻게 동작되는지에 대해 알아보자.
💡 Spring MVC 구조 및 동작 원리
- 클라이언트(브라우저)는 View에서 URL을 통해 요청
- DispatcherServlet은 요청을 받음
- DispatcherServlet은 HandlerMapping에게 요청된 url을 전송함
- HandlerMapping은 해당 요청을 매핑한 Controller가 있는지 검색,
있으면 호출해야 하는 Controller의 메소드(Handler) 정보를 DispatcherServlet에게 리턴
- DispatcherServlet은 HandlerAdapter 객체를 호출
- HandlerAdapter객체는 HandlerMapping이 찾은 Handler(Controller의 메소드)를 직접 실행
- Controller의 메소드는 Service, DAO, DB를 거쳐 비즈니스 로직을 수행(실질적인 비즈니스 로직 수행은 Service가 함), View의 논리적인 이름만 리턴하고 역할 끝
- HandlerAdapter는 View name을 받고 DispatcherServlet에게 전달
- DispatcherServlet은 ViewResolver에게 View name 전달
- View Resolver는 View name에 맞는 View를 찾고 객체를 생성하고 내용을 생성함.
- View를 통해 클라이언트는 처리결과를 받음.
📌참고
https://starkying.tistory.com/entry/Spring-MVC-%EB%8F%99%EC%9E%91%EC%9B%90%EB%A6%AC-%EA%B5%AC%EC%84%B1%EC%9A%94%EC%86%8C
https://ee-22-joo.tistory.com/20