は以下のjson
文書を考えてみましょう:JSONのプロパティにアクセスする二回
{
"a": {
"one": "1",
"two": "2"
},
"b": {
"three": "3",
"four": "4",
}
}
私はPOJO以下にそれをdeserizlizeする必要があります。
class Root{
@JsonAlias({"a","b"})
Node1 node1;
@JsonAlias({"a","b"})
Node2 node2;
}
class Node1 {
String one;
String three;
}
class Node2 {
String two;
String four;
}
それは、ネストされたノード(a
とb
)のように見えるができるだけでmapper.readValue
の間に一度だけ横断されます。私はnode2
から@JsonAlias({"a","b"})
を削除する場合にのみnode2
私はnode1
から@JsonAlias({"a","b"})
を削除する場合は、ジャクソンのみnode1
に移入されます。
私は両方にannotaionを残す場合は、いずれか一方のみが読み込まれます。
このマッピングはサポートされていますか?そうでない場合、回避策は何ですか?私はジャクソン2.9.1
おかげで、@マノス・ニコライディス、私のユースケースは、私が説明したよりも複雑です。私は最終的に[jolt](https://github.com/bazaarvoice/jolt)変換を途中で行い、変換されたオブジェクトをjacksonでRootオブジェクトに読み込みます。あなたの答えをもう一度おねがいします。 –