使用spring DatetimeFormat注释匹配datetime模式

时间:2015-07-18 14:36:35

标签: spring-mvc jquery-inputmask

我正在尝试使用此jquery输入掩码插件来提交日期时间字段。

输入提交为:

081220151530 - 2015年12月8日下午3:30

或在上午/下午它正在提交 081220150330p

我正在尝试将该值绑定到Joda DateTime字段,我想我应该能够在字段注释上指定自定义模式。

但是这种模式不匹配并抛出验证错误:

@org.springframework.format.annotation.DateTimeFormat(pattern = "DDMMYYYYhhmm")
private DateTime followUp;

错误:

Failed to convert property value of type 'java.lang.String' to required type 'org.joda.time.DateTime' for property 'followUp'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type java.lang.String to type @javax.persistence.Basic @org.hibernate.annotations.Type @org.springframework.format.annotation.DateTimeFormat org.joda.time.DateTime for value '081220151230'; nested exception is org.joda.time.IllegalFieldValueException: Cannot parse "081220151230": Value 22 for monthOfYear must be in the range [1,12]

所以2个问题: 1.理想情况下,它可以解析am / pm值,那么是否有一个匹配am / pm样式的模式?

  1. 如果没有,那么与24小时版本匹配的正确模式字符串是什么?
  2. 更新为原始问题:

    所以我使用DateFormat模式ddMMyyyyHHmm

    找出了24H模式

    但第二部分我无法得到 - 所以我要将其重新分配给jquery-inputmask标记,因为它将上午/下午提交为a和{{1}分别可能是一个bug ......

    所以我想如果有人知道如何让它提交pm / am,我可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

尝试:ddMMyyyyHHmma 发布值如05052016