spring mvc在普通类中获取HttpServletRequest对象需要做2个步骤:
1、在web.xml文件中加如下配置
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener </listener-class>
</listener>
在RequestContextListener类中有如下代码,其中红色标注的为关键代码:
public class RequestContextListener implements ServletRequestListener {
...
...
...
public void requestInitialized(ServletRequestEvent requestEvent) {
if (!(requestEvent.getServletRequest() instanceof HttpServletRequest)) {
throw new IllegalArgumentException("");
}
HttpServletRequest request = (HttpServletRequest) requestEvent.getServletRequest();
ServletRequestAttributes attributes = new ServletRequestAttributes(request);
request.setAttribute(REQUEST_ATTRIBUTES_ATTRIBUTE, attributes);
LocaleContextHolder.setLocale(request.getLocale());
RequestContextHolder.setRequestAttributes(attributes);
}
...
...
...
}
public class ServletRequestAttributes extends AbstractRequestAttributes {
...
...
...
private final HttpServletRequest request;
...
...
...
/**
* Create a new ServletRequestAttributes instance for the given request.
* @param request current HTTP request
*/
public ServletRequestAttributes(HttpServletRequest request) {
Assert.notNull(request, "Request must not be null");
this.request = request;
}
}
2、在普通类中获取对象
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
分享到:
相关推荐
java SpringMVC获取URLjava SpringMVC获取URLjava SpringMVC获取URLjava SpringMVC获取URL
ajax post 上传图片springmvc获取并保存base64编码的图片的方法
主要为大家详细介绍了SpringMVC接收多个对象的4种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
SpringMVC 传递 和 返回对象实例 以及 zTree例子 SpringMVC 传递 和 返回对象实例 以及 zTree例子
自定义注解:SpringBoot中针对SpringMvc自定义注解获取用户登陆信息
在我的博客中说到了,Springmvc获得参数的几种方式,共四方式,总结分享给大家咯
通过重写dispatcherservlet的一个doservice方法把springmvc的url对应方法打印出来。 所需要做的是: 1,使用本文件作为原先springmvc的xml文件的dispatcherservlet。 2,启动项目,随意发送一个请求,可以在控制台...
本篇文章主要介绍了springmvc 接收json对象的两种方式,具有一定的参考价值,有需要的可以了解一下。
主要介绍了SpringMVC接收复杂集合对象(参数)代码示例,举接收List、List、List<Map>>、User[]、User(bean里面包含List)几种较为复杂的集合参数,具有一定参考价值,需要的朋友可以了解下。
NULL 博文链接:https://yuhuiblog695685688425687986842568269.iteye.com/blog/2423933
关于SpringMVC获取域对象的方法
操作MySQL数据库的springmvc框架Maven工程demo,包括配置文件各标签解释。
springMVC前后交互代码,聚成各种参数传递,及多对象传递等。
主要介绍了Springmvc获取前台请求数据过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
17、SpringMvc 用什么对象从后台向前台传递数据的? 18、SpringMvc 中有个类把视图和数据都合并的一起的,叫什么? 19、怎么样把 ModelMap 里面的数据放入 Session 里面? 20、SpringMvc 怎么和 AJAX 相互调用的? 21...
利用spring+springMVC+myBatis三个框架上的增删改查
使用springMVC作为控制器,访问某一个url将会给你返回一段xml片段。
SpringMVC传递和返回对象实例以及zTree例子
详细的介绍了SpringMVC 中xml文件的读取与显示,附带有jsp页面的实现
后台界面实时获取用户输入内容,springMVC+Ajax实现(源码)