spring在普通类中获取session和request

在使用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;  

  在普通类中

HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
原文地址:https://www.cnblogs.com/cxyj/p/3906354.html