Spring & Spring Boot

스프링(Spring) MVC 구조 1편 - [ 스프링5 레서피 ]

사과씨앗 2021. 1. 6. 23:36
728x90
반응형

-- 스프링 5 레시피 책을 공부하며 작성한 글입니다. --

 

잘못된 부분이 있으면 댓글로 남겨주시면 감사하겠습니다 ^^

 

MVC란 간단히 정리하면

 

- Model : 모델은 애플리케이션의 정보, 즉 데이터를 나타낸다.

 

- View : 뷰는 사용자에게 보여주는 인터페이스, 즉 화면을 이야기한다. 자바 웹 애플리케이션에서는 JSP를 의미한다.

 

- Controller : 컨트롤러는 비즈니스 로직과 모델의 상호동작의 조정 역할을 한다. MVC2에서는 서블릿이 흐름을 제어하는 컨트롤러 역할을 수행한다. 

 

위 그림은 스프링 MVC에서 요청을 처리하는 흐름입니다.

 

클라이언트에게 요청이 들어오면 가장 먼저 디스 패쳐 서블릿으로 요청이 들어오게 됩니다. 

디스패처 서블릿은 요청을 컨트롤러에게 보내기 위해 매핑 값을 확인하고 @Controller 또는 @RestController가 선언되어 있는 클래스를 찾은 다음 @RequestMapping("맵핑 값") 어노테이션이 선언되어 있는 핸들러 매소드를 찾아 요청을 전달하여 줍니다. 

 

그 후 컨트롤러에서 핸들러 메서드는 클라이언트에 요청을 처리한 다음 클라이언트에게 보여줄 뷰를 찾기 위해 뷰 리졸버로 원하는 뷰의 이름을 보내어 줍니다. 

 

요청을 받은 뷰 리졸버는 해당 뷰를 찾아서 컨트롤러가 보내온 모델을 보내고 모델을 받은 뷰는 객체를 랜더링 하여 최종적으로 클라이언트에게 응답을 보내게 됩니다.

 

다음 글에서는 코드를 보면서 정리하여 보겠습니다.

 

감사합니다.

728x90
반응형