-
[Spring] Servlet 응답, 요청 객체를 얻는 방법 (HttpServletRequest, HttpServletResponse)백엔드/Spring 2021. 11. 4. 13:24
보통 스프링에서, controller의 파리미터로 선언을 하면
서블릿 요청, 응답 객체를 가져올 수 있다.
하지만, controller의 파리미터가 아니라면 어떻게 할까?
1. 메소드 내부에서 사용 (>= Spring 2.0 required)
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()) .getRequest();
2. 메소드 외부에서 사용 (supported by >= 2.5, Spring 3.0 for singelton beans required!)
@Autowired private HttpServletRequest request;
3. 나아가 아래와 같이 사용할 수도 있다.
ServletRequestAttributes sessionAttr = ((ServletRequestAttributes) RequestContextHolder .getRequestAttributes()); HttpServletRequest request = sessionAttr.getRequest(); HttpServletResponse response = sessionAttr.getResponse();
참고
https://stackoverflow.com/questions/559155/how-do-i-get-a-httpservletrequest-in-my-spring-beans
반응형'백엔드 > Spring' 카테고리의 다른 글
[Spring] Mybatis, JPA, ORM에 대해서 간단하게 알아보자 (2) 2022.05.21 [Spring] AOP 기능을 사용해서, 어노테이션으로 로그를 남기자 (annotation logging) (2) 2022.04.30 Spring Security에서 Ajax 권한 검사하는 법 (0) 2021.10.30 [Spring Security} Spring 3.x에서 mockMvc 테스트 하는 법 (0) 2021.01.15