클라이언트는 서버에게 단순히 페이지를 달라고 요청하는 것을 넘어, 특정 조건(예: 3번 유저의 정보, 검색어 '스프링')을 포함해 요청할 수 있습니다. 이번 강의에서는 URL 경로 자체에 값을 넣는 @PathVariable과 쿼리 스트링(Query String)으로 값을 전달하는 @RequestParam의 사용법을 알아봅니다.
어노테이션
사용 예시 URL
설명
@PathVariable
/users/3
리소스의 고유한 식별자나 경로의 일부를 동적으로 받을 때 사용합니다.
@RequestParam
/users?name=kim
필터링 조건, 검색어, 페이지네이션 등 부가적인 쿼리 파라미터를 받을 때 사용합니다.
실전 코딩: 동적 데이터 받아오기
UserController.java
package com.minstudio.demo.controller;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api/users")
public class UserController {
// URL 예시: GET /api/users/123
@GetMapping("/{id}")
public String getUserById(@PathVariable("id") Long userId) {
return "조회된 회원 아이디: " + userId;
}
// URL 예시: GET /api/users/search?keyword=스프링
@GetMapping("/search")
public String searchUsers(@RequestParam("keyword") String keyword) {
return "검색된 키워드: " + keyword;
}
}
localhost:8080/api/users/search?keyword=스프링
검색된 키워드: 스프링
// 강의 코드가 여기에 표시됩니다.
클라이언트 데이터 받기 (@PathVariable, @RequestParam) | Minstudio