🧭 @RequestMapping

정의

@RequestMapping특정 URL 요청을 어떤 Controller에서 처리할지 매핑하는 애너테이션이다.

클래스와 메서드에 모두 사용할 수 있으며, 요청 경로와 HTTP 조건을 기준으로 핸들러를 연결한다.

🧩 역할

  • 요청 URL을 컨트롤러에 연결한다.
  • HTTP 메서드, 파라미터, 헤더 조건을 함께 지정할 수 있다.
  • 클래스 레벨과 메서드 레벨에서 모두 사용할 수 있다.

📌 속성

이름 타입 설명
value String[] 연결할 URL 경로를 지정한다.
method RequestMethod[] HTTP 메서드를 지정한다.
params String[] 요청 파라미터 조건을 지정한다.
consumes String[] Content-Type 조건을 지정한다.
produces String[] Accept 조건을 지정한다.

🛠 사용법

클래스 레벨

@RequestMapping({"/hello", "/hello-buddy", "/hello/**"})
public class TestController {
    ...
}

메서드 레벨

@RequestMapping(method = RequestMethod.GET, value = "/hello")
public class TestController {
    ...
}

⚠️ 주의사항

  • 클래스 레벨과 메서드 레벨을 함께 사용하면 경로가 합쳐진다.
  • consumes는 요청의 Content-Type과 맞아야 한다.
  • produces는 클라이언트의 Accept 헤더와 맞아야 한다.

📌 정리

  • @RequestMapping은 요청 경로와 조건을 매핑하는 기본 애너테이션이다.
  • 클래스와 메서드에 모두 사용할 수 있다.
  • 세부 조건을 함께 지정하면 요청 처리를 더 정밀하게 제어할 수 있다.

연결문서

댓글남기기