【发布时间】:2013-05-15 02:07:41
【问题描述】:
我使用 Jackson 来处理 JSON,我有一个自定义日期序列化程序,用于以我想要的方式格式化日期,但它不遵守 @JsonSerialize(include = Inclusion.NON_NULL) 注释。序列化器在下面。
如果日期为空,它仍然会被写入。如果我不使用自定义序列化程序,一切都很好,不会写入空值。我的问题是,JsonSerializer 类中是否需要执行某些操作来停止写入空值?
public class DateSerializer extends JsonSerializer<Date>
{
@Override
public final void serialize(Date date, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException
{
SimpleDateFormat sdf = new SimpleDateFormat(MY_FORMAT);
jgen.writeString(sdf.format(date));
}
}
【问题讨论】: