浅谈FastJson的TypeReference用法
生活随笔
收集整理的這篇文章主要介紹了
浅谈FastJson的TypeReference用法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡單描述:看同事提交的代碼,發現有一行代碼 似曾相識,但卻朦朦朧朧,ε=(´ο`*)))唉很明顯自己沒掌握唄,于是乎,就百度了一下
干貨:對進行泛型的反序列化,使用TypeReference可以明確的指定反序列化的類型,
代碼:
//js代碼 將form表單里的各種元素里的值組裝成js對象,然后轉成json串,ajax傳遞給后臺
var planJson = JSON.stringify($("#addForm").serializeJson());
js調試結果:
//后臺java代碼
String planJson = request.getParameter("planJson");
if (!Tools.isEmpty(planJson)) {
Plan plan = JSON.parseObject(planJson, new TypeReference<Plan>() {
});
modelMap.addAttribute("plan", plan);
}
說明:JSON.parseObject(planJson, new TypeReference<Plan>(){})是把字符串planjson轉化為相應的JSONObject對象,“鍵值對”形式,然后通過new TypeReference<Plan>(){ }匿名內部類來吧planjson的JSONObject轉化為Plan對象,注意一點,前臺在做 $("#addForm").serializeJson() 處理的時候,form表單里還有許多隱藏域,不屬于plan對象本身的屬性,通過TypeReference只把屬于plan對象屬性的參數和值組裝成plan對象 (個人理解,歡迎指正)
后臺debug調試,plan的值
總結
以上是生活随笔為你收集整理的浅谈FastJson的TypeReference用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么叫乌冬面?
- 下一篇: 为什么妃子笑是荔枝中的一个品种?