1. 程式人生 > >生成JSON的幾種方式。

生成JSON的幾種方式。

大家好,我是IT修真院上海分院第5期學員,一枚正直善良的JAVA程式設計師。

今天給大家分享一下,修真院官網JAVA任務2中的深度思考,生成JSON的幾種方式,他們之間的好處和壞處分別是什麼,為什麼推薦使用json-taglib來處理JSON?

一、背景介紹

JSON,全稱是 JavaScript Object Notation,即 JavaScript 物件標記法。是一種輕量的資料交換格式。易於人閱讀和編寫。同時也易於機器解析和生成。所以使用json來傳遞資料可以達到簡單,快捷的效果。

JSON的兩種形式:

物件:是一個無序的“‘名稱/值’對”集合。一個物件以“{”(左括號)開始,“}”(右括號)結束。每個“名稱”後跟一個“:”(冒號);“‘名稱/值’ 對”之間使用“,”(逗號)分隔。

陣列:是值(value)的有序集合。一個數組以“[”(左中括號)開始,“]”(右中括號)結束。值之間使用“,”(逗號)分隔。

JSON的值:

值(value)可以是雙引號括起來的字串(string)、數值(number)、true、false、 null、物件(object)或者陣列(array)。這些結構可以巢狀。

二.知識剖析

json是做什麼用的?生成的JSON字串是用來做前後端互動的,當前端用ajax請求時,後端就返還一個JSON字串。

前端接收到JSON字串轉化為js物件,而後端接收到JSON字串,先轉化為JSON物件,在轉化為自定義物件。

生成JSON的三種方式:

適用json-taglib並在jsp頁面來設定欄位或巢狀。

同過註解ResponseBody返回Java物件或集合,可以自動轉化為JSON字串。

利用Gson轉化。

三.常見問題

前端傳過來的JSON轉化為Java物件?

JSON庫效能比較?

JSON和XML的優缺點JSON和XML的優缺點

四.解決方案

答:傳過來的是JSON字串,不是JSON物件,需要先轉化為JSON物件,然後解析為Java物件。轉化為JSON物件,可以通過new JSONObject(jsonstr);或者呼叫JSONObject.fromObject(jsonstr);

答:Java幾種常用JSON庫效能比較 https://www.xncoding.com/2018/01/09/java/jsons.html。

答:xml優點:格式統一,符合標準;容易與其他系統進行遠端互動,資料傳輸比較方便。缺點:大,佔頻寬;客戶端和服務端解析花費程式碼量大;不同瀏覽器解析方式不同,需要很多重複程式碼;解析花較多時間和資源。

JSON優點:格式簡單,易讀寫,壓縮格式;易解析;支援多種語言;可以直接作為服務端程式碼適用,減少程式碼量。

    缺點:不如XML通用;推廣比較少。

五。編碼實戰

六、參考文獻

json的生成方法 https://www.jianshu.com/p/002ef4cbcb2a

介紹 JSON https://json.org/json-zh.html

http://www.w3school.com.cn/tiy/t.asp?f=jquery_ajax_load

https://github.com/google/gson

Java中string字串轉json物件方法 http://www.51gjie.com/java/757.html

8.更多討論

鳴謝

感謝觀看,如有出錯,懇請指正

七.更多討論

詳見視訊

騰訊視訊

感謝大家觀看

今天的分享就到這裡啦,歡迎大家點贊、轉發、留言、拍磚~

技能樹.IT修真院

“我們相信人人都可以成為一個工程師,現在開始,找個師兄,帶你入門,掌控自己學習的節奏,學習的路上不再迷茫”。

這裡是技能樹.IT修真院,成千上萬的師兄在這裡找到了自己的學習路線,學習透明化,成長可見化,師兄1對1免費指導。快來與我一起學習吧~

我的邀請碼連結:http://www.jnshu.com/login/1/20535344

我的邀請碼:20535344?