1
我有以下JSON結構傑克遜JSON反序列化包裝的財產(丟棄信封)
{
"hits" : {
"hits" : [
{
"_source" : {
"title" : "My Title",
"description" : "My Description"
}
}
]
}
}
這是什麼從彈性搜索返回當我搜索我的索引一本書。
書定義爲Java類型:
class Book {
private String title;
private String description;
//...Getters and setters
}
所以在JSON,_source實際上是書。我想將結構反序列化爲Book,我想用一些JsonDeserializer實現。我嘗試了很多不同的方法,但沒有找到任何成功,並且無法在網上找到關於這個主題的任何體面的文檔,我只能說我可能需要實現ResolvableDeserializer,但不知道如何實現它的解決方法,甚至不知道是什麼!有沒有人有任何想法做到這一點或鏈接到解釋?
乾杯 NFV
我意識到Jackson Databinding可以開箱即用,但是即時通訊的難點在於如何讓它無視信封?我認爲像@JsonRootName(「_源」)可能會這樣做,但沒有運氣。 – nfvindaloo 2013-04-11 17:01:24
整件事情?像hits.hits._source一樣?好吧,這個問題並沒有真正清楚;) – 2013-04-11 17:16:08
對不起,這個ID是喜歡忽略hits.hits,只是得到_source元素(這是Book)。另請注意,hits.hits是_source元素的數組,儘管hits.hits.length == 1總是。我想定製的BeanDeserializer或ResolvableDeserializable的行,但不能找到任何文件如何使用這些? – nfvindaloo 2013-04-11 20:17:21