
💡Request 관련 어노테이션 정리
📘 Spring Controller Request 어노테이션 정리
RequestParam
/search?name=value@GetMapping("/search")
public String searchUser(@RequestParam String name) {
return "검색한 이름: " + name;
}
PathVariable
/users/{id}@GetMapping("users/{id}")
public String getUser(@PathVariable Long id) {
return "사용자 ID: " + id;
}
RequestBody
@PostMapping
public String createUser(@RequestBody UserDto userDto) {
return "등록된 유저: " + userDto.getName();
}
RequestHeader
@GetMapping("/auth")
public String auth(@RequestHeader("Authorization") String token) {
return "받은 토큰: " + token;
CookieValue
@GetMapping("/cookie")
public String getCookie(@CookieValue("sessionId") String sessionId) {
return "세션 ID: " + sessionId;
}
정리
| 받는 위치 | 어노테이션 | 예시 |
|---|---|---|
| 쿼리 파라미터 | @RequestParam | ?name=kim |
| URL 경로 | @PathVariable | /users/1 |
| JSON 요청 바디 | @RequestBody | { "name": "kim" } |
| 폼 데이터 | @ModelAttribute | HTML <form> 전송용 |
| 헤더 | @RequestHeader | Authorization 헤더 |
| 쿠키 | @CookieValue | sessionId 등 |