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段转换成这个对象的数组,而不仅仅是一个对象。

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