Spring MVC 提交表单提示HTTP status 400

2018-05-29  本文已影响0人  挣不到50万不改网名

Controller 方法中不一定要全部都有 form表单提交的属性, 也可以有 请求属性中 没有的参数(这时候只会把对应不上的参数设为null),这两种情况都不会报错。

但是有几种情况会报错,可能会提示HTTP status 400,  The request sent by the client was syntactically incorrect,而且此时如果加断点你会发现根本进不了Controller,但是浏览器中url的路径是正确的。

会出现错误的情况如下:

错误(1) 前台请求的参数在方法中有对应的参数名,但是无法转成对应的类型,比如form中 有,方法public String aa(int id){ } , 当在文本框中输入“wwwwee”等非整形字符时,就会出错。特别提示的是,java Date类型,在form表单中必须按照 “2016-10-10 12:10:12”  的格式走(注意中间的空格,最少要写到时,即2016-10-10 12)。在form的checkbox多选框对应 java的数组,不能对应List。

错误(2)方法中参数名重复。public String aa(User user,String name){   }, User这个类中有name属性,现在就导致 Spring MVC不知道绑定哪各属性。

案例:

这里的商品重量,后台为int类型,而前台输入的是一个字符串,提交时就会绑定参数失败出现下面界面

上一篇下一篇

猜你喜欢

热点阅读