-
핸들러 메소드 URI 패턴Spring/Spring MVC 2020. 6. 9. 00:05
- 다음과 같은 Test를 성공시켜보자
- URI 요청에 /hello/1이 들어오면 해당 URI에 있는 1을 가져오는 것
@PathVariable
- 이는 @PathVariable을 통해 간단히 가능하다.
- @PathVariable은 URI의 템플릿 변수를 읽을 때 사용한다.
- @ResponseBody는 리턴하는 값을 응답 본문에 쓰게 되고
- 이때 HttpMessageConverter에 의해서 최종적으로 JSON 타입으로 변환되어 보내지게 될 것이다.
- @PathVariable에 의해 URI에 템플릿 변수 id는 id 아규먼트에 담기게 된다.
- 그리고 해당 {id}는 String 타입이지만 Integer 타입으로 자동으로 타입 변환이 된다.
- 다른 이름을 쓰고 싶다면 맵핑하는 값을 써주어야 한다.
@MatrixVariable
- Key, value 쌍을 URI에다가 정의하는 방법이고 다음과 같이 요청을 보낼 수 있다.
- 그러면 MatrixValue로 바인딩을 받아올 수 있게 된다.
- 하지만 기본적으로 MatrixVariable을 지원하지 않기 때문에 설정을 통해 사용할 수 있도록 해주어야 한다.
- 기본적으로 세미콜론을 제거해서 매트릭스 바인딩이 안되기 때문에
- 다음과 같이 세미콜론을 없애지 않도록 정의해주었다.
- 이제 다음과 같은 핸들러가 정상적으로 응답을 반환하게 된다.
- 이 외에도 Map으로 정의할 수도 있다.
'Spring > Spring MVC' 카테고리의 다른 글
@ModelAttribute과 BindingResult (0) 2020.06.11 요청 매개변수를 메소드 아규먼트로 받아오는 방법 (0) 2020.06.09 스프링MVC 핸들러 아규먼트와 리턴타입 살펴보기 (0) 2020.06.08 Custom한 어노테이션 만들기 (0) 2020.06.07 HEAD와 OPTIONS 메소드 (0) 2020.06.07