본문 바로가기
카테고리 없음

[Spring] Spring MVC의 @PathVariable 어노테이션

by SolaKim 2023. 7. 31.

'@PathVariable'은 스프링 프레임워크에서 웹 요청의 URL 경로(Path)에서 변수를 추출하는데 사용되는 어노테이션이다. 주로 RESTful 웹 애플리케이션에서 URL 경로에 변수를 포함하여 데이터를 전달할때 활용된다.

  • 일반적으로 URL은 다음과 같은 구조를 가진다: http://example.com/somePath/{variable} 
  • {variable} 부분은 동적으로 변하는 값이며, @PathVariable을 사용하여 컨트롤러 메서드의 파라미터와 연결하여 추출할 수 있다.

 

예를 들어,

@Controller
public class MyController {

    @GetMapping("/greet/{name}")
    public String greetUser(@PathVariable("name") String name) {
        return "Hello, " + name + "!"; // 예: "Hello, John!"과 같은 문자열 반환
    }
}
  • 위의 코드에서 @GetMapping 어노테이션은 /greet/{name} 경로로 들어오는 GET 요청을 처리하는 메서드를 정의한다.
  • 이때 {name} 부분은 사용자의 이름을 나타내는 동적인 변수다.
  • @PathVariable("name")은 이 동적인 변수를 컨트롤러 메서드의 name 파라미터와 바인딩한다. 즉, /greet/John과 같은 요청이 들어오면 name 파라미터는 "John"이라는 값으로 설정된다.
  • 따라서 @PathVariable을 사용하면 URL 경로에 포함된 변수를 쉽게 추출하여 사용할 수 있다.
  • 이를 활용하여 RESTful API에서 리소스 식별 등에 사용할 수 있다.