Spring
Controller method parameter types
kmkunk
2021. 11. 12. 16:32
1. HttpServletRequest, HttpServletResponse
- HTTP 프로토콜의 request와 response를 서블릿에게 전달하기 위해 사용한다.
2. HttpMethod
- HTTP 메서드를 조회한다.
3. Locale
- Locale 정보를 조회한다.
4. @RequestHeader
- 모든 헤더 및 특정 헤더를 조회한다.
// 모든 HTTP 헤더 조회
@RequestHeader MultiValueMap<String, String> headerMap
// 특정 HTTP 헤더 조회
@RequestHeader(value="host", required=false, defaultValue="defaultHost") String host
4.1 MultiValueMap
- Map과 유사하지만, 하나의 키에 여러 값을 받을 수 있다.
- HTTP header, HTTP 쿼리 파라미터와 같이 하나의 키에 여러 값을 받을 때 사용한다.
// 입력 예시
MultiValueMap<String, String> map = new LinkedMultiValueMap<>();
map.add("keyA", "value1");
map.add("keyA", "value2");
// 출력 예시
List<String> values = map.get("keyA");
5. @CookieValue
- 특정 쿠키를 조회한다.
@CookieValue(value="myCookie", required=false, defaultValue="defaultCookie") String cookie
참고
- https://springsource.tistory.com/13
- 『스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술』