보통 스프링에서, 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
How do I get a HttpServletRequest in my spring beans?
I'm developing an app with a Flex-based front end and a Spring/Hibernate back-end. To get Facebook integration working in the way I've got it currently, I need to read the cookies set in javascrip...
stackoverflow.com
'백엔드 > 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 |
댓글