Jackson を使用して ser/deser しようとしている POJO があります。ただし、クラスに独自のser/deserロジックを提供する必要があります。だから私は次のように書くことができます:
@JsonDeserialize(using = MyClass.class)
@JsonSerialize(using = MyClass.class)
class MyClass ... {
private String x;
private String y;
// getters and setters
void serialize(MyClass object, JsonGenerator jsonGenerator,
SerializerProvider serializerProvider) throws IOException {
....
}
MyClass deserialize(JsonParser jsonParser,
DeserializationContext deserializationContext) throws IOException {
....
}
}
定義する POJO ごとに ser / deser ロジックを提供するために 2 つのクラスを記述したくありません。
- JsonSerializer と JsonDeserializer が抽象クラスであり、インターフェイスではない場合、これを実現するために任意の種類のプロキシ メカニズムを使用できますか?
- これはグッドプラクティスに違反していますか?
初期調査:
- スタックオーバーフローに関する質問
- この議論。