개발/스프링
@PathVariable vs @RequestParam
시간의 효율화
2022. 5. 5. 16:32
면접 때 나온 질문이다.
@PathVariable은 URI 경로부터 값을 추출하고, @RequestParam은 query string으로부터 값을 추출한다.
@PathVariable은 URI path 값을 encode 되지 않은채 그대로 추출함.
예)
http://localhost:8080/spring-mvc-basics/foos/ab+c
----
ID: ab+c
@RequestParam은 파리미터 값이 decode 되어 됨.
예)
http://localhost:8080/spring-mvc-basics/foos?id=ab+c
----
ID: ab c
@PathVariable 및 @RequestParam 둘 다 Optional 기능이 있음.
URI Path 혹은 query string 값을 required 할 수도 있고, 안 할 수도 있음.
출처:
https://www.baeldung.com/spring-requestparam-vs-pathvariable