프로그래밍/spring
spring에서 현재의 HttpServletRequest 가져오는 법
GOHA
2016. 4. 20. 04:11
728x90
프로젝트를 하다 보면 현재 요청된 HttpServletRequest를 찾고자
할때가 있습니다.
Service,DAO에서 현재의 request가 필요할때가 있을수 있습니다.
(물론 컨트롤러에 인자로 넘기면 됩니다.)
정확한 케이스를 말하긴 힘들지만 실무에서
꼭 필요할때가 있습니다.
그래서 현재의 Request를 스프링에서 가져 오는 방법을
설명 하고자 합니다.
* RequestContextListener 설정하기
web.xml 파일에 아래와 같이 리스너를 설정 합니다.
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
* 현재 HttpServletRequest 객체 가져오는 함수 만들기
public static HttpServletRequest getCurrentRequest() {
ServletRequestAttributes sra = (ServletRequestAttributes) RequestContextHolder
.currentRequestAttributes();
HttpServletRequest hsr = sra.getRequest();
return hsr;
}
출처 : http://beyondj2ee.tumblr.com/
728x90