为什么Spring 使用Autowired方式注入HttpServletRequest,post方式请求获取不到参数?

如题,使用这种方式

@Autowired
    private HttpServletRequest r;

获取的request是
图片说明
如果是POST请求,获取不到参数,
但是如果在方法参数中注入就可以

@RequestMapping("/test.do")
    @ResponseBody
    public Object test(HttpServletRequest req) 

图片说明

0

2个回答

写法没问题,实际测试没发现你说的问题!

0
tz_yhj
哎呀好气啊 回复qq_16127313: 好像是POSTMAN的问题,我这边尝试在HTML中表单提交的方式是正常的,但是使用POSTMAN就有问题
6 个月之前 回复
qq_16127313
爱码少年 执行RestControllerTest testRestAPI 分别输出5,10,10
6 个月之前 回复
tz_yhj
哎呀好气啊 回复qq_16127313: 我这边请求参数不是在参数列表里面注入的,而是直接request.getParameter("")获取的,可以试下在https://gitee.com/00fly/java-code-frame/blob/master/springmvc-dbutils/src/main/java/com/fly/demo/controller/RestUserController.java48行输出request.getParameter("pageSize"),看下有没有值
6 个月之前 回复
qq_16127313
爱码少年 参考 https://gitee.com/00fly/java-code-frame/blob/master/springmvc-dbutils/src/test/java/com/fly/test/restful/RestControllerTest.java https://gitee.com/00fly/java-code-frame/blob/master/springmvc-dbutils/src/main/java/com/fly/demo/controller/RestUserController.java
6 个月之前 回复
qq_16127313
爱码少年 应该不大可能,这是springmvc的最基础的功能
6 个月之前 回复
tz_yhj
哎呀好气啊 有没有可能是因为spring版本的问题,我这边用的版本是3.2.2
6 个月之前 回复

HttpServletRequest 不是你写入到配置文件的,在方法参数中也不是注入,是获取页面提交的request请求

-1
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
SpringMVC之自动注入Request对象
前几天看了领导写的一段代码,在Controller中注入了HttpServletRequest,形式如下所示: @RestController public class AutowiredRequestController { @Autowired private HttpServletRequest request; }当时看到了这一段代码,首先想到的是AutowiredRe
Jersey方式post请求springmvc(包含参数)
使用jersey访问springmvc的controller    需要注意的是 obj.toString() ,必须这样写,否则会提示格式错误
springmvc的参数接收不能兼容以及HttpServletRequest中的流多次使用
web开发中的POST请求很常见,最近遇到的一个问题是写接口,我看别人牛逼的接口都是又能浏览器访问,又能JS访问,又能URL getUrl = new URL(url);URLConnection connection = getUrl.openConnection();访问, 而我在用springmvc的时候利用他请求参数自动封装的用法,怎么样都不能兼容JS和后台请求接口两种用法,也是百度谷歌
HttpServletRequest获取http请求参数问题
今日用springMVC配置请求路径,前端发HTTP请求后报出如下错误:No modifications are allowed to a locked ParameterMap:意思是不允许对锁定参数进行修改。后台参数是通过 request.getParameterMap()获取,直接处理获取的map时,就报出了该错误。经过纠结尝试,最终通过request.getParameter(),逐个获取...
@Autowired注入request为null解决方法
在类中加入以下注入request对象的代码,运行时发现request为null,注入失败。在@Controller,@@Service,@Repository标识的类中注入就可以。 解决方法:http://yayihouse.com/yayishuwu/chapter/1041
servlet获取get,post(json,form-date)三种请求参数
一,get userCode = request.getParameter("userCode"); 二,post(json) if (userCode == null || "".equals(userCode)) { String jsonstr = CommonUtils.readJSONString(request); System.out.println(jsonst...
SpringMVC中使用Ajax POST请求以json格式传递参数服务端通过request.getParameter("name")无法获取参数值问题分析
SpringMVC中使用Ajax POST请求以json格式传递参数服务端通过request.getParameter(“name”)无法获取参数值问题分析 一:问题demo展示 在开发新需求,调试代码的时候发现一个问题,就是HttpServletRequest 获取不到ajax post请求的json参数!下面是伪代码是整个请求的逻辑! 1.前台JS请求代码(伪代码)
不通过注解,直接从request中读取POST请求体中数据
在开发基于SpringBoot框架的web工程时,我们一般通过@RequestBody注解,把post请求体中的数据自动封装到实体类中。但是,有时候,post请求体中的数据并不适合转化成实体类,根据场景不同,我们需要直接从请求体中读取数据,方法如下:import javax.servlet.ServletInputStream; import javax.servlet.http.HttpServl
angularjs发送post请求,servlet无法用getParameter(name)获取的解决方法,亲测有效
初始请求如下所示,servlet无法获取参数值 $http({ method : "POST", url : url, data:data }).success(function(data, status, headers, config) { //....  }) 当post请求的Content-Type为application/x-www-form-urlencoded
$.ajax()post方式请求参数无法传递,request.getParameter()无法获取
$.ajax()post方式请求参数无法传递,request.getParameter()无法获取  在前台页面中 $.ajax({                     url : "${ctx}/rediscluster/delete.do",                     data : {"rname":rname},
SpringMVC 在controller层中注入request(不会产生线程安全问题)
之前做项目的时候,在controller中多个方法需要用到request和session获取用户相关值,为了方便写了个BaseController所有controller基础它,在BaseController中Autowired注解request和httpsession,这样子,不需要在各个接口单独加上request入参。这样子的设计在开发阶段和测试阶段都用了有一段时间,一直没有问题。最近偶然在国...
从头认识Spring-2.3 注解装配-@autowired(3)-通过构造器方法注入
这一章节我们来讨论一下注解装配的@autowired是怎样通过set方法或者其他方法注入?1.domain蛋糕类:(不变)package com.raylee.my_new_spring.my_new_spring.ch02.topic_1_8; public class Cake { private String name = ""; public String getName() {
spring学习笔记13(注解@Autowired方式注入)
出自:http://wang09si.blog.163.com/blog/static/17017180420139261016713/ @Autowired与@Resource用法基本相同,区别在于@Autowired是默认以类型去查找,而@Resource默认以字段名去查找。 @Autowired是spring提供的,而@Resource是j2ee提供的。 看例子:
SpringMVC之前台post方式传递的json格式参数无法到后台
在项目开发中,后台接口开发好了,在本地用postman测试都是没有问题了,前台开发联调后,发现用get方式没问题,但是前台post方式以json方式穿过的的参数,到后台,后台的参数为null,解决方法如下篇文章: http://blog.csdn.net/yixiaoping/article/details/45281721
SpringMVC接收不到POST方式提交的参数
SpringMVC接收不到POST方式提交的参数:表单默认属性为application/x-www-form-urlencoded如果使用GET则强制使用application/x-www-form-urlencoded方式ajax提交表单使用contentType : "application/json;charset=utf-8"使SpringMVC获取不到POST提交的参数。解决方案:1、如...
SpringBoot过滤器过滤get及post请求中的XSS和SQL注入
1.创建XssAndSqlHttpServletRequestWrapper包装器,这是实现XSS过滤的关键,在其内重写了getParameter,getParameterValues,getHeader等方法,对http请求内的参数进行了过滤。 package com.wb.common; import java.io.BufferedReader; ...
webx 中request 对象作为单例注入的实现
webx 文档中描述: 你不能把一个短期的对象如request、response和request context注入到MyAction这个singleton对象。然而,在Webx中,这样做是可以的!奥秘在于Request Contexts服务对上表所列的这些短期对象作了特殊的处理,使它们可以被注入到singleton对象中。事实上,被注入的只是一个“空壳”,真正的对象是在被访问到的时候才会从线程
spring boot单元测试中出现response、request依赖注入错误
是因为UT时并不会启动http容器;需要在测试类首部增加注解: @WebAppConfiguration 完整代码如下: @WebAppConfiguration @ActiveProfiles("test") @RunWith(SpringJUnit4ClassRunner.class) @SpringApplicationConfiguration(HacksawApplicatio...
postman发送post请求,用request.getParameter()获取请求参数注意事项
后台springMVC用request.getParameter()获取请求参数的话,在postman发送请求时,body选取x-www-form-urlencoded,Headers部分是key: Content-Type----------value: application/x-www-form-urlencoded。当然,也可以使用其他方式获取请求参数如@RequestBody 实体类 实...
springmvc在普通类中获取HttpServletRequest对象
在普通类中获取对象
使用postman请求springmvc接口时,request获取不到数据
http://www.cnblogs.com/softidea/p/6125087.html
springmvc中controller注入request的线程安全问题
本文全部转载于http://www.cnblogs.com/developer-ios/p/5918999.htmlSpringMvc学习心得(四)springmvc中request的线程安全问题    servlet是单例的,而tomcat则是在多个线程中调用servlet的处理方法。因此如果servlet存在实例对象,那么就会引出线程安全的问题。而springmvc允许在controller类...
【Spring】【DI】【Bean对象注入属性的三个方式】【Autowired,Qualifier,Resource注解】
Bean的属性注入的三个方式向dao类注入sessionFactory属性1.使用<property>可以注入String,list等+bean对象 <bean id="sessionFactory" class="XXX.XXX.HibernateTransactionManager" /> <bean id="employeeDAO" class="dao.impl.Employee
Springmvc httprequest 使用@Autowired注解是否单例的解释
引用: springmvc httprequest 使用@Autowired注解 SpringMVC在Controller层中注入request的坑 对于Springmvc httprequest 使用@Autowired注解全局变量有个疑问,就是注解后每次的httprequest 是不是都一样的了?然后会不会引发多线程问题? import javax.servlet.http.HttpServl...
Spring @Aspect切面无法使用@Autowired注入以及获取被切方法中的某个参数
在Spring中一般使用@Aspect注解来定义一个切面,但是测试发现: @Aspect @Component public class IpWhiteListAspect { @Autowired private IpWhiteListConfig ipWhiteListConfig; 使用上述代码,运行的时候发现 bean ipWhiteListConfig为null,...
Spring注入 @Autowired和setter方式区别原理
spring 的注入方式有:setter、constructor、静态工厂方法、实例工厂方法、注解@Autowired自动装配几种方式。 今天我们要了解的是:setter和@Autowired两种方式的区别,常用的setter方式很好理解,通过调用Bean的属性setter方法直观的赋值即可。而@Autowired方式,没有setter方法赋值又是通过什么方式实现的呢?看一下spring源码
解决:Rest类无法取得HTTP PUT请求发送的参数
rest类通过String id = request.getParameter("id");可以取得url传递过来的id参数值 但是,Put中的参数无法取得,如下 以下内容来自:http://dbscx.iteye.com/blog/828167 PUT和POST的定义:  使用PUT和POST插入新资源方面所起的作用的争议。HTTP1.1协议中都有新增和更新的定义
Servlet中request请求Get和Post方法以及乱码解决
前言: 传递的请求参数如何获取 GET方式: 参数放在URI后面 POST方式: 参数放在实体内容中 后台获取前台数据方法: 核心的API: request.getParameter(&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;参数名&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;); 根据参
httpurlconnection使用post传值时web接口接收不到值
最近好久没有写博客了,因为上班的原因。今天想做一个点餐系统,移动版和服务器版。数据使用json数据进行传输。但是碰见一个难题就是如何让移动端将数据传输给服务器,然后进行更新到数据库。进入正题: 因为我使用的是httpurlconnection,大家都知道get请求的参数是放在url后面以?开头&分割。但是如果我们参数多或者是参数不想让别人知道的时候我们就要使用post,因为他的参数是放在相
axios 发 post 请求,后端接收不到参数的详细解决方案
  问题描述 :axios post 请求或者get请求后接收不到参数 后端接收设置: @RequestParam @RequestBody设置的原因   由于spring的RequestParam注解接收的参数是来自于requestHeader中,即请求头,也就是在url中,格式为xxx?username=123&amp;amp;password=456,而RequestBody注解接收的参数则是...
SpringBoot-Mock方式发送http post请求,参数无法正确设置到请求方法体中
问题描述:使用Spring Mock的方式发送post请求,参数没有正确被设置到请求方法体中,导致发送请求到后台无法正常获取参数原始代码如下:RequestBuilder request = post(&quot;/loggers/logger.controller&quot;).content(JSONObject.toJSONString(map));问题原因:调用content()方法之前,没有指定conten...
servlet获取get和post请求数据方式
通用request.getParameter(&quot;age&quot;) get请求和post请求  都可以通过request.getParameter(&quot;age&quot;)方法获取;   get请求request.getQueryString() get请求可以通过request.getQueryString()获取url后面的字符串。 示例:http://localhost/demo/RequestSer...
spring cloud feign 调用微服务转发不了request请求头和参数问题解决方案
spring cloud feign 调用微服务转发不了request请求头和参数问题解决方案问题:开发中发现feign调用的微服务获取不到参数,查看文档吧一天终于扒到了解决方案;原理:为feign添加拦截,修改默认config,为feign请求添加原request的请求头以及参数! 相关代码如下:代码块@Configuration public class FeignConfiguration
springboot自动(@Autowired)注入方式与自己new实例的区别讲解
在上期讲到springboot搭建的多模块项目(module)Service自动注入(@Autowired)空指针错误解决的时候https://blog.csdn.net/Myuhua/article/details/84317582,跟大家说到要把为什么在new对象跟自动注入对象同时使用时会空指针,还有就算new对象怎么处理才不会出现空指针的问题给大家说一下,今天我就来还账了。 谈到这个问题,...
spring boot@Autowired注入失败和自定义controller扫描失败的解决方法
刚接触springboot,从网上找了一篇教程,试着做一个springboot+mybatis的小demo,使用STS构建的,IDE用的是eclipse 参考了这篇教程https://segmentfault.com/a/1190000017211657 基本是参照教程写的,那篇教程写得不错,讲解得比较详细,但是我在运行的时候出现了两个问题 一、controller包下面的user...
spring aop输出日志中获取request的post参数
  问题:aop 中使用 request.getInputStream()、request.getReader()获取post参数,因为此时存放post参数的流已经关闭,所以报汇报IO异常解决方案:一,通过aop切点,读取controller参数   logger.info(&quot;REQUEST:&quot; + JSONObject.toJSONString(joinPoint.getArgs()));/**...
post方式传参,在程序中获取不到传的值
public CommonResult deleteRole(Integer roleid){          System.out.println(roleid); } post方式,传参是json格式的话,上述方法打印是null;实际上前端已经传了,只是我们接收的方式不对。 解决方法一:使用注解@RequestBody,需要使用JSONObject 转换   public
restful服务端无法获取post参数的解决方法
使用spring + cxf 搭建的restful webservice,在接收post请求参数时,我使用如下方法来解析: public class InMessageInterceptor extends AbstractPhaseInterceptor { public InMessageInterceptor() { super(Phase.PRE_INVOKE); } .....
问题:使用@Autowired无法注入Bean对象
问题 在公司的一个项目开发时,遇到了一个类的属性无法注入的问题 public class DemoController extends BaseController implements BussinessProcessHandler { @Autowired DemoApi demoApi; public void demo() { demoA...
Spring 注入方式之工厂方法注入
有时候,静态工厂方法是实例化对象的唯一方法,Spring支持通过&amp;lt;bean&amp;gt;元素的factory-method属性来装配工厂创建的Bean。 单例模式(设计模式) public class DBUtil { //构造方法私有化 private DBUtil(){} //创建一个对象实例 private static DBUtil instance ...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 学习java的方式 大数据的学习方式