1

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 つのクラスを記述したくありません。

  1. JsonSerializer と JsonDeserializer が抽象クラスであり、インターフェイスではない場合、これを実現するために任意の種類のプロキシ メカニズムを使用できますか?
  2. これはグッドプラクティスに違反していますか?

初期調査:

  • スタックオーバーフローに関する質問
  • この議論。
4

1 に答える 1