springmvc 为什么不支持string到data参数的转换

一直不知道为什么springmvc为什么不支持string到date参数的转换,今天有时间看了下,

原来string到date对象调用的是ObjectToObjectConverter转换器,这个转换器采用反射形式获取构造方法,创建对象,

源对象string类型,目标对象是date类型,他尝试用date的string参数构造方法创建date对象,

 Java对这个string参数是有格式要求的,因此在这一步就报错了

我们一般喜欢传递“2015-11-05”这种格式,实际上是不支持的,api明确说会抛出IllegalArgumentException异常,因此我们换个思路,前端字符串换成Java支持的类型,IETF 标准日期语法等,例如 12 Aug 1995 这种springmvc就能正常转换,还有前端传递的时候如果不想转换格式可以直接使用

new Date().toUTCString(),这种字符串是支持的,当然更多的人采用的是自己去创建日期转换器

你可能感兴趣的:(springmvc 为什么不支持string到data参数的转换)