2 回答

TA貢獻1847條經(jīng)驗 獲得超7個贊
根據(jù)你的 JSON 結(jié)構(gòu)myMap
是一個String
. 但是,即使您從值中刪除引號,myMap
您也會發(fā)現(xiàn){1:"A"}
不是有效的 JSON,有效的 JSON 語法要求所有屬性鍵都是字符串。一個有效的 JSON 結(jié)構(gòu)看起來像{"1":"A"}
. 反序列化器應(yīng)該能夠?qū)⒚荑€強制轉(zhuǎn)換為Integer
,所以Map<Integer, String>
沒問題。

TA貢獻1893條經(jīng)驗 獲得超10個贊
首先,確保具有類似以下資源方法的內(nèi)容:
@Path("/url")
public class Test {
@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response post(@RequestBody Foo foo) {
...
}
}
然后,當(dāng)您通過 POSTMAN 發(fā)送請求時,選擇 POST 類型,然后選擇“原始”選項,然后在“正文”中發(fā)送一個 JSON,其中包含您要放入 Map 的值。記得選擇 "application/json" 。Jackson 將為您將 JSON 轉(zhuǎn)換為 Map。
{
"myInt": 10,
"myMap": {
1: "A"
}
}
添加回答
舉報