spring的普通类中如何取session和request对像
在使用spring时,经常需要在普通类中获取session,request等对像. 比如一些AOP拦截器类,在使用struts2时,因为struts2有一个接口使用org.apache.struts2.ServletActionContext即可很方便的取到session对象.用法:ServletActionContext.getRequest().getSession();但在单独使用
·
在使用spring时,经常需要在普通类中获取session,request等对像.
其实也是有办法的.
比如一些AOP拦截器类,在使用struts2时,因为struts2有一个接口使用org.apache.struts2.ServletActionContext即可很方便的取到session对象.
用法:ServletActionContext.getRequest().getSession();但在单独使用spring时如何在普通类中获取session,reuqest呢?
其实也是有办法的.
首先要在web.xml增加如下代码:
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
注解方式:接着在普通bean类中:
@Autowired
private HttpSession session;
@Autowired
private HttpServletRequest request;
即可,在类中使用session对像了
代码方式:当加了上面的listener后也可以使用代码的方式获取reuqest对像
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
更多推荐

所有评论(0)