【发布时间】:2017-12-09 10:07:03
【问题描述】:
我有这样的课:
public class Foo {
private Integer id;
private FooB fooA;
private boolean isB;
private boolean isC;
private int age;
private LocalDate date1;
private LocalDate date2;
private LocalDate date3;
private LocalDate date4;
}
我想以原生方式序列化此类中的所有内容除了,用于LocalDate 字段。我有一个这样的自定义序列化程序:
public class LocalDateSerializer extends JsonSerializer<LocalDate> {
@Override
public void serialize(LocalDate localDate, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
//serialize
}
}
有没有办法注释类Foo 说只对LocalDate 类型的对象使用序列化程序或我是否必须像这样注释每个单独的字段:
public class Foo {
private Integer id;
private FooB fooA;
private boolean isB;
private boolean isC;
private int age;
@JsonSerialize(using = LocalDateSerializer.class)
private LocalDate date1;
@JsonSerialize(using = LocalDateSerializer.class)
private LocalDate date2;
@JsonSerialize(using = LocalDateSerializer.class)
private LocalDate date3;
@JsonSerialize(using = LocalDateSerializer.class)
private LocalDate date4;
}
我的问题是,我可以将其合并到一个类级别的注释中吗?
【问题讨论】:
-
看起来添加自定义模块是可行的方法。 spin.atomicobject.com/2016/07/01/custom-serializer-jackson
-
@MaxPower 这不是我要问的问题。我已经编写了一个自定义序列化程序。我在问注释
标签: java json serialization jackson