根据你的评论,你是否建议你想从Jackson的字符串中序列化和反序列化MyDate?这可以通过JsonDeserilizer和JsonSerilizer完成。这里有一个例子:
public class JsonMyDateDeserializer extends JsonDeserializer<MyDate> {
@Override
public Date deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException, JsonProcessingException {
String stringValue = jsonParser.getText();
// Convert it to a MyDate how ever you want.... just example below
return new MyDate(stringValue)
}
}
而要做到这一点的回报(消毒指明MyDate到JSON):
public class JsonMyDateSerializer extends JsonSerializer<MyDate> {
@Override
public void serialize(MyDate myDate, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
// Just an example.... convert your myDate something the jsonGenerator can handle
jsonGenerator.writeString(myDate.toString());
}
}
,那么你需要注释你的根类是这样的:
public class RootJson {
@JsonSerialize(using = JsonMyDateSerializer.class)
@JsonDeserialize(using = JsonMyDateDeserializer.class)
private MyDate myDate;
private String id;
}
这是否覆盖它?
Jackson库的目的是为了执行Java <-> JSON转换。你能否进一步解释你正在努力完成什么?如果你只需要接受字符串并写入String为什么涉及杰克逊?请详细说明。 – maheeka
我更新了示例,如果看到myDate字段,我不想使用类定义MyDate的字符串。 –
我更新了我的答案,这是否覆盖了它? –