@JsonSerialize: Difference between revisions
Jump to navigation
Jump to search
Line 8: | Line 8: | ||
=Overview= | =Overview= | ||
The annotation allows to control serialization to JSON on a field-by-field basis. The fields need to be annotated as follows: | |||
<syntaxhighlight lang='java'> | |||
@JsonSerialize(using = MyDateSerializer.class) | |||
private Date timestamp; | |||
</syntaxhighlight> | |||
The serializer class should be provided: | |||
<syntaxhighlight lang='java'> | |||
public class MyDateSerializer<Date> extends JsonSerializer<Date> { | |||
@Override | |||
public void serialize(Date value, JsonGenerator gen, SerializerProvider serializers) throws IOException { | |||
DateFormat f = new SimpleDateFormat("MM/dd"); | |||
String s = f.format(value); | |||
gen.writeString(s); | |||
} | |||
} | |||
</syntaxhighlight> | |||
=Example= | =Example= | ||
{{External|Playground Example}} | {{External|Playground Example}} |
Revision as of 18:09, 14 November 2018
External
Internal
Overview
The annotation allows to control serialization to JSON on a field-by-field basis. The fields need to be annotated as follows:
@JsonSerialize(using = MyDateSerializer.class)
private Date timestamp;
The serializer class should be provided:
public class MyDateSerializer<Date> extends JsonSerializer<Date> {
@Override
public void serialize(Date value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
DateFormat f = new SimpleDateFormat("MM/dd");
String s = f.format(value);
gen.writeString(s);
}
}
Example
- Playground Example