框架:为springmvc+spring+mongodb
目的:想做一个时间相关的查询(需要比较大小),后端是用Date来接收的,前端是用input的date标签传送值
前端jsp页面:
后端查询模型
说明:在我前端填写了时间之后,点击查询提交表单,结果就出现:错误400报The request sent by the client was syntactically incorrect ()然后各种不知道怎么回事,以前从来没出现这种情况;因为我默认springmvc在controller里面会根据数据模型里面的字段类型把前端传来的值自动转型,结果经过查询才知道,尼玛springmvc接收来的都是String类型的,所以必须要用string类型的来接收:如下
好了现在传值,后台不会报错了;但是之后出现了一个问题:不能查询,因此必须又要把string类型的用DateUtil.formatDate(startDate,"yyyy-dd-mm")转了,再来比较!
特别说明:刚刚试了一下上面的格式转换,结果查出来的不准确;然后看了下源码,发现dd必须要大写才能查出准确的结果:因此这些细小的地方真的不得不注意如下:
总结:1.对于springmvc来说:前端传值的名字和后端的名字一定要对应(免得后端处理);
2.springmvc的controller里面接收到的前端数据(都是string类型的)这里更正一下,因为在使用中后台有些类型controller貌似可以自动转换,因此要注意调整!一定要注意用string类型的字段接收