우리는 특정 URI 로 요청을 보내면 Controller 에서 어떠한 방식으로 처리할지 정의를 한다.
이때 들어온 요청을 특정 메서드와 매핑하기 위해 사용하는 것이 @RequestMapping
이다.
@RequestMapping(value = "/api", method = RequestMethod.Get)
@RequestMapping
에서 가장 많이 사용되는 속성은 value
와 method
이 있다.
@RestController
@RequestMapping(value = "/hello")
public class HelloController {
@GetMapping("/hi")
public String helloGet(...) {
...
}
@PostMapping("/hi")
public String helloPost(...) {
...
}
@PutMapping("/hi")
public String helloPut(...) {
...
}
@DeleteMapping("/hi")
public String helloDelete(...) {
...
}
}
위 코드를 보면
@RequestMapping
을 클래스 부분에 붙여주어 공통적인 URI를 받도록 설정해 주었다.
그리고 @GetMapping
등과 같이 method 부분을 어노테이션 이름에 명시를 해준 새로운 어노테이션을 사용해주었다.
각 메서드에는 /hello/hi
로 접근할 수 있는데,
각 사용하길 원하는 메서드가 받는 HTTP 메서드
로 요청을 보내면
알맞은 메서드가 실행된다.