Development/API

[Spring Boot] @RequestParam과 @PathVariable의 차이점

레오나르도 다빈츠 2021. 10. 18. 16:11

◽ @RequestParam

URL 형태 :: http://test.com?index=1&code=0
// URL에서 "index"라는 이름의 파라미터를 받아온다. @RequestMapping("read") public String getIndex(@RequestParam("index") int idx) { // ... } // URL에 key값이 없는 경우(BadRequest 발생)를 대비하여 defaultValue를 지정해줘야 한다. @RequestMapping("read") public String getIndex( @RequestParam(value="index", required=false, defaultValue="") int idx) { // ... } // 파라미터가 많은데 DTO가 없거나 만들필요가 없는 경우에는 Map 형태로 받을 수도 있다. @RequestMapping("read") public String getIndex( @RequestParam HashMap<String, String> paramMap) { // ... }




◽ @PathVariable

URL 형태 :: http://test.com/read/1
// URL에서 "index"라는 이름의 파라미터를 받아온다. @RequestMapping("read/{index}") public String getIndex(@PathVariable("index") int idx) { // ... }



개인적으로 공부한 내용을 정리하는 블로그로
잘못된 개념을 게시하지않도록 주의하고 있으나 오류가 있을 수 있습니다.