【发布时间】:2012-02-19 20:24:32
【问题描述】:
我正在使用带有 JSR303 的 Spring MVC 进行输入验证。
我创建的表单有几个日期字段绑定到支持表单的对象中的Date 对象。我正在使用 JSR303 使用 @Future 对 Date 进行验证。我也在使用@DateTimeFormat(pattern="dd/MM/yyyy"),(我知道这不是验证)。
如何验证表单上String 的日期格式?如果我将其他必填字段留空 (@NotEmpty) 并以“dd/MM/yy”形式输入无效日期,它会在重新演示时转换为“dd/MM/yyyy”(例如 12/03 /12 重新表示为 12/03/0012)。这意味着我将在我的系统中获得 duff 数据。如果我输入“aaa”,我会得到一个转换异常。格式正确的 Strings 会被转换为 Date 对象。
Date 字段的“必填字段”注释还应该是@NotNull 还是@NotEmpty?
非常感谢您提供的任何建议。
【问题讨论】:
标签: java date spring-mvc format bean-validation