专栏首页Ryan MiaoSpringMVC 参数注入

SpringMVC 参数注入

写一个web service, 总是400. 说是request有问题,server不识别。然而检查了很多次都没问题。最终问题指向spring对参数的解析和注入。

一个controller中可以自定义参数,只要参数和request的参数匹配就会自动注入。针对自定义POJO,显然是spring帮忙给new了一个新的,然后把参数扔进去。

测试发现,不是setter方法的问题。

最后,发现自己在POJO中添加了个构造函数但却么有声明无参构造函数,这样导致spring无法调用无参构造函数,于是bad request就产生了。至于深层次的原因,需要深入resolve源码去查看。

问题原因:

1. 没有对原理深入理解,没有对源码熟悉。

2. log显示问题,由于使用cmd打开的tomcat,错误输出很不友好,几乎不会去看。虽然很费解为什么公司的架构师设计控制为cmd,但目前只能认真去看了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 使用SpringSecurity搭建授权认证服务(1) -- 基本demo认证原理

    登录认证是做后台开发的最基本的能力,初学就知道一个interceptor或者filter拦截所有请求,然后判断参数是否合理,如此即可。当涉及到某些接口权限的时候...

    Ryan-Miao
  • 简单的使用ehcache

    之前一直感觉缓存是高上大的东西,没有心思去研究。做了之后发现,简单的使用还是很容易的。这里记录ehcache在jfinal中的简单使用。 1.ehcahe简介 ...

    Ryan-Miao
  • 添加PMD插件扫描潜在的bug

    上一节使用checkstyle来规范你的项目主要解决了代码编码规范问题,比如缩进换行等。这次继续代码健康工具类PMD。

    Ryan-Miao
  • SpringBoot 2.0中SpringWebContext 找不到无法使用的问题解决

    为了应对在SpringBoot中的高并发及优化访问速度,我们一般会把页面上的数据查询出来,然后放到redis中进行缓存。减少数据库的压力。

    做全栈攻城狮
  • Spring Boot 自定义 Starter

    我们在学习springboot的过程中发现springboot的使用起来非常的简单和方便,在使用springboot明显不用像ssm框架那样配置一大推动的东西,...

    技术从心
  • teg nginx访问量-错误率-延迟grafana展示

    conf/vhost.d/bthlt.com/k8s/api.bthlt.com.conf

    葫芦
  • 如何在Windows和Linux服务器中检测混淆命令

    在目前的无文件恶意软件或网络犯罪领域中,命令行混淆已经是很常见的了。为了绕过基于签名的安全检测机制,红队渗透测试以及APT攻击活动都会使用各种专用的混淆/模糊技...

    FB客服
  • 「机器学习」:不得不知的概念(2)

    在上一篇推送中我们总结了机器学习第一课,一些最最基本的概念,比如特征,训练集,维数,假设空间等,接下来,继续介绍机器学习第二课,通过一个例子说明什么是机器学习的...

    double
  • form表单提交与ajax消息传递

    后台: def index(request): if request.method == 'POST': print(request.POST) # 普通...

    小小咸鱼YwY
  • 黑客新手入侵云服务器仅需4小时

    外国媒体发表文章对云服务器的安全性做了剖析,以下为文章内容摘要:入侵云服务器需要多长时间?为了探究这一问题答案,云安全创新企业CloudPassage联接6台...

    安恒信息

扫码关注云+社区

领取腾讯云代金券