Spring MVC:允许的默认日期格式是什么?
在我的Spring Web MVC应用程序中,我在中有很多方法,@Controller
它们使用接受a
Date
作为输入参数@RequestParam
。在没有定义任何自定义数据绑定器或属性编辑器的情况下(我承认我仍然不清楚这两者之间的区别),默认情况下支持哪些日期格式?例如,我注意到类似‘11
/ 12/2012 16:50 PM’的效果很好,但是拒绝了诸如‘1352815200000’这样的普通milis值。
编辑:我得到的特定异常是:“无法将类型’java.lang.String’的值转换为必需的类型’java.util.Date’;嵌套的异常是java.lang.IllegalStateException:无法转换类型[java的值.lang.String]转换为必需的类型[java.util.Date]:未找到匹配的编辑器或转换策略”
回答:
我相信,如果未指定任何转换器,Spring转换系统将最终调用不建议使用的Date
构造函数,该构造函数将String作为参数。
/** * Allocates a <code>Date</code> object and initializes it so that
* it represents the date and time indicated by the string
* <code>s</code>, which is interpreted as if by the
* {@link Date#parse} method.
*
* @param s a string representation of the date.
* @see java.text.DateFormat
* @see java.util.Date#parse(java.lang.String)
* @deprecated As of JDK version 1.1,
* replaced by <code>DateFormat.parse(String s)</code>.
*/
@Deprecated
public Date(String s) {
this(parse(s));
}
通常,应用程序有不同的要求-一些使用本地时间(还可能使用浏览器的特定功能和用户时区设置),一些不需要存储日期-
因此最好同时实施日期转换策略在客户端和服务器端。
PS请注意,Date.parse()
它也已弃用。
以上是 Spring MVC:允许的默认日期格式是什么? 的全部内容, 来源链接: utcz.com/qa/420690.html