JSON 文字列を Java オブジェクトに変換したいのですが、このオブジェクトのクラスには、Jackson がインスタンス化できない抽象フィールドが含まれており、オブジェクトを生成しません。次のような抽象クラスのデフォルトの実装について伝える最も簡単な方法は何ですか?
setDefault(AbstractAnimal.class, Cat.class);
または、JSON 属性名に基づいて実装クラスを決定します。JSON オブジェクトの場合:
{
...
cat: {...}
...
}
私はただ嘆くでしょう:
setImpl("cat", Cat.class);
Jackson で JSON 内にクラス情報を埋め込むことが可能であることはわかっていますが、使用する JSON 形式を複雑にしたくありません。デフォルトの実装クラスを設定するだけで、または属性名(「cat」)で使用するクラスを決定したい-XStreamライブラリのように、次のように記述します:
xStream.alias("cat", Cat.class);
特に1行でそうする方法はありますか、それとももう少しコードが必要ですか?