[Spring] @PathVariable @RequestBody

지인·2023년 6월 27일
0

Spring

목록 보기
15/20

🐰 @PathVariable

  • 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);
}
  • 위의 코드에서 PathVariable 어노테이션은 userId라는 경로 변수를 추출하여 getUser 메서드의 userId 매개변수와 매핑한다.
    이를 통해 사용자 ID에 해당하는 사용자 정보를 조회하고 응답으로 반환한다.
 /users/{userId}
  • 사용 시 경로에서 대체된다.
 /users/123


🐰 @RequestBody

  • 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);
}
  • 위의 코드에서 requestBody 어노테이션은 요청 본문에 있는 데이터를 UserDto 객체로 변환한다.
    이를 통해 생성에 필요한 데이터를 받아와서 새로운 사용자를 생성하고 응답으로 반환한다.
profile
열쩡

0개의 댓글