Notice
Recent Posts
Recent Comments
Link
관리 메뉴

데브마우스

[Spring] 스프링 MVC의 컨트롤러 정리 본문

Spring/Spring: 정리

[Spring] 스프링 MVC의 컨트롤러 정리

데브마우스 2024. 1. 17. 16:36

컨트롤러(@Controller)란 무엇인가요?

컨트롤러 Annotation은 일반적인 자바 클래스가 아닌, 웹 브라우저에서 들어온 요청을 처리할 수 있는 메서드를 가진 특정한 자바 클래스입니다. 또한 import org.springframework.stereotype.Controller;를 import 해줘야 사용할 수 있습니다.

스프링 MVC의 컨트롤러는 무엇을 하나요?

스프링 MVC에서 사용자 요청(URL 이동)을 받으면 가장 먼저 디스패처 서블릿에 전달합니다. 디스패처 서블릿은 핸들러 매핑으로써 요청을 전달받는 역할만 합니다. 실제로는 컨트롤러(Controller)가 요청을 처리합니다.

디스패처 서블릿과 컨트롤러의 클라이언트 요청 처리 과정
          실제 처리 컨트롤러
(자바 파일)
       
WelcomeController.java
클라이언트 ─클라이언트의 URL 요청→ 디스패처 서블릿
MemberController.java
       
MessageController.java
           

 

컨트롤러의 클라이언트 요청 처리 과정 흐름도
클라이언트의 요청 URL 발생
  코드
1. 컨트롤러 정의 @Controller
   
2. 요청 매핑 경로 설정
@RequestMapping(value="/books", method=RequestMethod.GET)
   
3. 요청 처리 메서드 구현
public String Weclome(Model model) {
model.addAttribute("welcome","환영합니다.");
   
4. [뷰 or 모델 or 모델&뷰] 반환
 
return "welcome"; }
   
클라이언트 웹 브라우저 응답
  클라이언트 요청 응답 완료