스프링 프레임워크에서 @RequestMapping 어노테이션은 웹 요청을 처리하는 메소드나 클래스에 적용되는 어노테이션입니다. @RequestMapping 어노테이션에 대해 자세히 알아보고, 예시를 통해 설명하도록 하겠습니다.
@RequestMapping 어노테이션의 역할
@RequestMapping 어노테이션은 클라이언트의 요청을 특정 메소드 또는 클래스에 매핑하여 해당 요청을 처리할 수 있도록 합니다. 이 어노테이션을 사용하여 경로, HTTP 메소드, 요청 헤더 등 다양한 요청 조건을 설정할 수 있습니다.
@RequestMapping 어노테이션 예시
아래는 @RequestMapping 어노테이션을 사용한 예시입니다.
@Controller
@RequestMapping("/users")
public class UserController {
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
public ResponseEntity<User> getUser(@PathVariable("id") int id) {
// 사용자 정보 조회 로직
return ResponseEntity.ok(user);
}
@RequestMapping(value = "/", method = RequestMethod.POST)
public ResponseEntity<User> createUser(@RequestBody User user) {
// 사용자 생성 로직
return ResponseEntity.status(HttpStatus.CREATED).body(createdUser);
}
}
위의 예시에서 UserController 클래스에 @RequestMapping 어노테이션이 붙어있습니다. 클래스에 적용된 @RequestMapping("/users")은 /users 경로로 들어오는 모든 요청을 해당 클래스의 메소드가 처리할 수 있도록 매핑합니다. 메소드에 적용된 @RequestMapping 어노테이션은 각각 GET과 POST 요청에 대한 매핑을 설정합니다. 예를 들어, /users/123 경로로 GET 요청이 들어오면 getUser() 메소드가 실행되어 해당 사용자의 정보를 조회하고 응답을 반환합니다.
경로 변수와 요청 매핑
@RequestMapping 어노테이션은 경로 변수를 사용하여 동적인 경로 매핑도 가능합니다. 예를 들어, /users/{id}와 같이 경로 변수를 지정하면 {id} 자리에 들어온 값에 따라 매핑이 결정됩니다.
마무리
스프링의 @RequestMapping 어노테이션에 대해 알아보았습니다. @RequestMapping 어노테이션을 사용하여 웹 요청을 특정 메소드나 클래스에 매핑할 수 있으며, 다양한 요청 조건을 설정할 수 있습니다.
'IT > spring' 카테고리의 다른 글
스프링 @RequestParam 어노테이션 (0) | 2023.06.29 |
---|---|
스프링 @ModelAttribute 어노테이션 (0) | 2023.06.29 |
스프링 @Controller 어노테이션 (0) | 2023.06.29 |
스프링 DispatcherServlet 인코딩 설정 (0) | 2023.06.28 |
스프링 DispatcherServlet (0) | 2023.06.28 |
댓글