json轉換異常Can not deserialize instance of …… out of START_ARRAY token

參考文章:https://stackoverflow.com/questions/19333106/jsonmappingexception-out-of-start-array-token

先寫下自己的json格式:

[{
	"tag": "",
	"metal": "W18K",
	"lossRate": 0.1,
	"weightMax": "2.5",
	"weightMin": "1.5"
}, {
	"tag": "",
	"metal": "PT950",
	"lossRate": 0.1,
	"weightMax": "2.5",
	"weightMin": "1.5"
}] 

在使用Jackson轉換這段json的時候報出JsonMappingException: out of START_ARRAY token,查找原因,最終把發生錯誤的原因定位到最外層的[ ]上,因爲Jackson object mapper在把返回的json片段轉換成對象時,需要的是Object{},而我返回的是Array[{ }]。

爲了解決這個問題,在將json轉換成對象時,使用Object[].class替換Object.class,即把json段轉換成這個對象的數組,而不僅僅是一個對象。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章