?大家好我是IT修真院一枚純潔的程序員,今天給大家分享一下生成json的幾種方式
1.背景介紹
JSON-taglib是一個JSP 2.0標記庫,用于在JSP代碼中呈現(xiàn)JSON(JavaScript Object Notation)數(shù)據(jù)。它可以作為AJAX應(yīng)用程序的服務(wù)器端的一部分,允許您使用JSP的全部功能來格式化您的JSON數(shù)據(jù)。
標簽庫建立在由Douglas Crockford編寫的Java JSON庫上。
JSON指的是 JavaScript對象表示法(JavaScript Object Notation)
JSON是輕量級的文本數(shù)據(jù)交換格式
JSON獨立于語言以上傳.json使用的JavaScript的的語法來描述數(shù)據(jù)對象,但是JSON仍然獨立于語言和平臺以上傳上傳.json解析器和JSON庫支持許多不同的編程語言目前非常多的動態(tài)(PHP,JSP, .NET)編程語言都支持JSON。
JSON具有自我描述性,更為理解
2.知識剖析
JSON是一種輕量級的數(shù)據(jù)交換格式。它是一種基于文本的,用于表示數(shù)據(jù)結(jié)構(gòu)的可讀格式.JSON是JavaScript對象文字符號的一個子集,廣泛用于AJAX Web應(yīng)用程序。
JSON-taglib被設(shè)計為盡可能易于使用。
它只做一件事:在JSP中呈現(xiàn)JSON數(shù)據(jù)。
SON-taglib由3個用于定義數(shù)據(jù)的簡單標簽組成:JSON:object,JSON:property和JSON:array。
JSON-taglib標簽的建立
在JSP中包含taglib。只需將json-taglib jar文件放入webapp的WEB-INF / lib目錄中,然后在JSP的頂部使用以下taglib聲明。
<%@ taglib prefix =“json”uri =“http://www.atg.com/taglibs/json”%>
一、JSON對象
JSON:object標簽用于創(chuàng)建JSON對象對象可以根據(jù)需要多次嵌套上傳上傳上傳上傳.json對象包含屬性,使用上面描述的JSON:屬性標簽添加。
二、JSON屬性
JSON:property標記來呈現(xiàn)JSON屬性可以用該屬性標簽將屬性添加到數(shù)據(jù),對象或者數(shù)組中進行嵌套使用
JSON屬性基本上只是名稱/值對。
名稱就是是一個字符串,可以在標簽上設(shè)置name =“...”屬性。
值通過在標簽上設(shè)置value =“...”屬性。
如果指定的值是一個布爾值,那么它將被轉(zhuǎn)換為一個JSON布爾值
如果指定的值是一個數(shù)字(整數(shù),短,長,雙,浮點數(shù)),那么它將被轉(zhuǎn)換成JSON數(shù)值。
如果該值是一個字符串,它將被轉(zhuǎn)換為一個JSON字符串。
任何其他用于設(shè)置值的的的的的Java類型都將調(diào)用的的的toString()方法,它們將被視為JSON字符串。
三、JSON數(shù)組
JSON:array標簽用于創(chuàng)建JSON數(shù)組上傳上傳上傳上傳.json數(shù)組可能包含字符串,數(shù)值,布爾值,JSON對象或其他JSON數(shù)組。
使用items =“...”屬性傳遞值的集合或數(shù)組。
集合將被迭代,集合中的每個值都將被添加到JSON數(shù)組中。
集合中的項目類型遵循與JSON屬性相同的規(guī)則,所以整數(shù)將成為JSON數(shù)字,布爾變成JSON布爾等等。
3.常見問題
為什么推薦使用JsonTaglib來處理的的的Json的??
4.解決方案
使用JSON-標簽庫,在控制器中的代碼更加簡潔,易讀
使用JSON-標簽庫更加靈活,如果以后需要更改JSON數(shù)據(jù)格式,只需要更改JSP頁面即可,不需要改動控制器代碼
5.編碼實戰(zhàn)
6.擴展思考
生成的的的Json的有幾種方式,他們之間的好處和壞處分別是什么?
7.參考文獻
參考一:HTTP://json-taglib.sourceforge.net/
參考二:HTTPS://v.qq.com/x/page/q05502dk6ls.html
參考三:HTTP://www.runoob.com/json/json-tutorial.html