注释类型 DateTimeFormat
@Documented @Retention(RUNTIME) @Target({METHOD,FIELD,PARAMETER,ANNOTATION_TYPE}) public @interface DateTimeFormat
Declares that a field or method parameter should be formatted as a date or time.Supports formatting by style pattern, ISO date time pattern, or custom format pattern string. Can be applied to
java.util.Date
,java.util.Calendar
,java.lang.Long
, Joda-Time value types; and as of Spring 4 and JDK 8, to JSR-310java.time
types too.For style-based formatting, set the
style()
attribute to be the style pattern code. The first character of the code is the date style, and the second character is the time style. Specify a character of 'S' for short style, 'M' for medium, 'L' for long, and 'F' for full. A date or time may be omitted by specifying the style character '-'.For ISO-based formatting, set the
iso()
attribute to be the desiredDateTimeFormat.ISO
format, such asDateTimeFormat.ISO.DATE
. For custom formatting, set thepattern()
attribute to be the DateTime pattern, such asyyyy/MM/dd hh:mm:ss a
.Each attribute is mutually exclusive, so only set one attribute per annotation instance (the one most convenient one for your formatting needs). When the pattern attribute is specified, it takes precedence over both the style and ISO attribute. When the
iso()
attribute is specified, it takes precedence over the style attribute. When no annotation attributes are specified, the default format applied is style-based with a style code of 'SS' (short date, short time).- 从以下版本开始:
- 3.0
- 作者:
- Keith Donald, Juergen Hoeller
- 另请参阅:
DateTimeFormat
iso
DateTimeFormat.ISO iso
The ISO pattern to use to format the field.The possible ISO patterns are defined in the
DateTimeFormat.ISO
enum.Defaults to
DateTimeFormat.ISO.NONE
, indicating this attribute should be ignored. Set this attribute when you wish to format your field in accordance with an ISO format.- 默认值:
- org.springframework.format.annotation.DateTimeFormat.ISO.NONE
pattern
String pattern
The custom pattern to use to format the field.Defaults to empty String, indicating no custom pattern String has been specified. Set this attribute when you wish to format your field in accordance with a custom date time pattern not represented by a style or ISO format.
Note: This pattern follows the original
SimpleDateFormat
style, as also supported by Joda-Time, with strict parsing semantics towards overflows (e.g. rejecting a Feb 29 value for a non-leap-year). As a consequence, 'yy' characters indicate a year in the traditional style, not a "year-of-era" as in theDateTimeFormatter
specification (i.e. 'yy' turns into 'uu' when going through thatDateTimeFormatter
with strict resolution mode).- 默认值:
- ""