-
[Spring MVC] @RequestMapping 요청 매핑Spring/Spring MVC 2021. 5. 20. 18:43
컨트롤러의 메소드에 @ReqeustMapping 어노테이션을 추가하면 클라이언트의 요청을 수행할 수 있다
또한 추가적으로 @RequestMapping 어노테이션에 파라미터를 추가하면 요청을 선택적으로 수행할 수 있다
이번엔 요청 매핑에 관련된 설정 정보들을 알아 볼 것이다
@RestController
일반적인 @Controller가 반환하는 String값은 뷰로 인식되어 렌더링 과정을 거친다. 하지만 @RestController가 반환하는 String 값은 렌더링 과정 없이 HTTP Body에 그대로 들어간다. 어노테이션의 Rest는 Rest API의 Rest를 의미하며 Json을 return 할 수 있도록 설계된 것이다
@RequestMapping("/hello-basic", "hello-koji")
대부분의 속성을 배열로 제공하므로 다중 설정이 가능하다
@RequestMapping("/hello-basic/")
Spring은 "/hello-basic/" 과 "/hello-basic"을 같은 요청으로 매핑한다
@PathVariable("userId")
@RequestMapping은 URL 경로를 템플릿화 할 수 있는데 @PathVariable을 사용하면 매칭되는 부분을 편리하게 조회할 수 있다. 또한 @PathVariable의 이름과 파라미터 이름이 같으면 생략할 수 있다.

@GetMapping(value = "/mapping-param", params = "mode=debug")
params 파라미터를 통해 파라미터의 값이 지정한 값과 동일한 경우 요청을 수행할 수 있다


@GetMapping(value = "/mapping-header", headers = "mode=debug")
headers 파라미터를 통해 파라미터의 값이 지정한 값과 동일한 경우 요청을 수행할 수 있다


@PostMapping(value = "/mapping-consumes", consumes = "application/json")
consumes 파라미터를 통해 요청 데이터의 Content-Type을 지정할 수 있다


@PostMapping(value = "/mapping-produces", produces = "text/html")
produces 파라미터를 통해 요청 데이터의 Accept 값을 지정할 수 있다


Accept 헤더와 일치하지 않아 406 에러를 return했다 'Spring > Spring MVC' 카테고리의 다른 글
[Spring MVC] 파라미터 받아오기 - 주의사항 (0) 2021.05.22 [Spring MVC] 파라미터 받아오기 - Spring 사용하기 (0) 2021.05.22 [Spring MVC] 어노테이션 기반의 스프링 MVC 컨트롤러 (0) 2021.05.19 [Spring MVC] Spring MVC 구조의 이해 (0) 2021.05.19 [Spring MVC] MVC 프레임워크 직접 만들어보기 (1) 2021.05.18