본문 바로가기

Programming/Spring

[Spring] @PathVariable 사용시 주의점

@PathVariable 사용시 주의점


현재 프로젝트에서 Spring REST API 형식을 사용하고 있다. 

아직 @PathVariable에 관한 오류는 나지 않지만 

돌아다니다 보니 사용시 주의점에 관한 글이 있어서 얼른 수정했다.


내용은 

일반적으로 @PathVariable 사용시 (나도 이렇게 사용중)

@RequestMapping(value = "/user/{user_id}", method = RequestMethod.GET)

public ResultVO getUserInfo(@PathVariable String user_id){

...

return resultVO;

}

우선은 위의 코드처럼 사용시 오류없이 잘 실행이 되지만

컴파일러 옵션을 변경한 상태에서 컴파일&실행을 하게되면 오류가 난다고 한다.


오류 내용은 해당 URL을 인식하지 못한다고하는데 그래서 해당 클래스의 메소드까지

전달되지 않고 디버그도 찍히지 않는다고 한다.


그래서 옵션에 관계없이 오류가 나지 않게 사용하려면

@RequestMapping(value = "/user/{user_id}", method = RequestMethod.GET)

public ResultVO getUserInfo(@PathVariable("user_id") String user_id){

...

return resultVO;

}

위의 코드 처럼 사용하길 권장한다고 한다.




출처 : 머찐아빠