【发布时间】:2015-11-23 16:41:24
【问题描述】:
如何通过扩展 json serializer<Calendar> 为 java Calendar 创建自定义序列化到 json?
我对@987654322@ 进行了同样的尝试,它正在工作。在序列化方法中,我将Date转换为String,写成json格式。
为 java.util.Date 完成的示例代码类似于下面给出的代码
public class CDJsonDateSerializer extends JsonSerializer<Date>{
@Override
public void serialize(Date date, JsonGenerator jsonGenerator,SerializerProvider provider)
throws IOException {
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
String dateString = dateFormat.format(date);
jsonGenerator.writeString(dateString);
}
}
它是这样使用的:
@JsonSerialize(using = CDJsonDateSerializer.class)
private Date startDate;
如何将 java 中的日历序列化为 json 而不会丢失日历对象中的数据?
【问题讨论】:
-
你能发布你的代码吗?如果我们有一些东西可以开始回答会更容易。
-
我已经用更多信息更新了这个问题。
-
如果你将它用于日历会发生什么?
-
如果我遵循上述方法。我将如何从写为 json 的字符串中反序列化回实际的日历对象。?对于日期到字符串,反之亦然。我们有“格式化和解析”方法
-
您可以将其解析为日期,然后使用它初始化
Calendar,如下所示c = Calendar.getInstance(); c.setTime(date);。有JsonDeserializer类。
标签: java json jakarta-ee fasterxml