我有initiationDate按ToStringSerializerISO-8601格式按类序列化的字段.
@JsonSerialize(using = ToStringSerializer.class)
private LocalDateTime initiationDate;
Run Code Online (Sandbox Code Playgroud)
当我收到以下JSON时
...
"initiationDate": "2016-05-11T17:32:20.897",
...
Run Code Online (Sandbox Code Playgroud)
我想通过LocalDateTime.parse(CharSequence text)工厂方法反序列化它.我的所有尝试都以com.fasterxml.jackson.databind.JsonMappingException:
无法
java.time.LocalDateTime从Stringvalue('2016-05-11T17:32:20.897')实例化[simple type,class ] 类型的值; 没有单一的String构造函数/工厂方法
我如何实现这一目标?如何指定工厂方法?
编辑:
通过将jackson-datatype-jsr310模块包含到项目中并使用@JsonDeserializewith 来解决该问题 LocalDateTimeDeserializer.
@JsonSerialize(using = ToStringSerializer.class)
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
private LocalDateTime initiationDate;
Run Code Online (Sandbox Code Playgroud)