PathVariable 어노테이션은 URL 경로에서 변수
값을 추출하는 데 사용된다.
주로 RESTful 웹 서비스에서 사용자가 전달한 결로의 일부를 동적으로 추출하는데 사용된다.
메서드의 매개변수 앞에 @PathVariable 어노테이션을 사용하여 경로 변수와 매핑한다.
예를 들어, users/{userId}
와 같은 URL 패턴에서 {userId} 부분을 추출하여 매개 변수로 사용할 수 있다.
@GetMapping("/users/{userId}")
public ResponseEntity<User> getUser(@PathVariable Long userId) {
// userId를 사용하여 사용자 정보를 조회하고 응답
User user = userService.getUserById(userId);
return ResponseEntity.ok(user);
}
/users/{userId}
/users/123
RequestBody 어노테이션은 HTTP 요청의 본문 (body)에 있는 데이터를 객체
로 변환하는 데 사용된다.
주로 POST 또는 PUT 요청과 함께 데이터를 전송할 때 사용된다.
메서드의 매개변수 앞에 RequestBody 어노테이션을 사용하여 요청 본문의 데이터를 객체로 변환한다.
JSON 형식의 요청 본문 데이터를 객체로 변환하여 사용할 수 있다.
@PostMapping("/users")
public ResponseEntity<User> createUser(@RequestBody UserDto userDto) {
// 요청 본문의 데이터를 사용하여 사용자 생성
User createdUser = userService.createUser(userDto);
return ResponseEntity.ok(createdUser);
}