在使用spring时,经常需要在普通类中获取session、request对象。
比如一些AOP拦截器类,在有使用struts2时,因为struts2有一个接口使用org.apache.struts2.ServletActionContext即可很方便的取到session对象。

用法:
ServletActionContext.getRequest().getSession();
登录后复制在传统java spring项目的普通类中,如何获取session、request呢?
1、在web.xml增加如下代码:
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>登录后复制2、在普通类中就可以直接注入session和request了
@Autowired
private HttpSession session;
@Autowired
private HttpServletRequest request;
登录后复制除此之外,在第一步的Listener后也可以使用代码的方式获取reuqest对象:
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
登录后复制如果是在spring boot项目中,没有web.xml,也不需要收手动注册第一步的Listener,可以直接在普通类中注入session和request。
以上就是spring普通类获取session和request对象的详细内容,更多请关注靠谱客其它相关文章!

最后
以上就是无私冰棍最近收集整理的关于spring普通类获取session和request对象的全部内容,更多相关spring普通类获取session和request对象内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复