JacksonでJsonから特定の要素をデシリアライズしたくない場合のメモ
📅 2015/03/17
以下のようなJsonとデシリアライズ先クラスがありlistの要素だけデシリアライズしたくない場合にtitleフィールドをStringに変更するのは間違いです。
Can not deserialize instance of java.lang.String
Data.java
public class Data {
String id;
List<Title> title;
public static class Title {
String title;
}
}
sample.json
{
"id": "12345",
"list": [
{
"title": "ふしぎの海のナディア"
},
{
"title": "ガンバの冒険"
}
]
}
Data.javaクラスのtitleフィールドをObjectにすると後でデシリアライズできる。
Data.java
public class Data {
String id;
Object title;
}