JSON
JSON 是一種輕量級(jí)易與解析的數(shù)據(jù)格式扬绪,它按照 js 的對(duì)象和數(shù)組的字面
量格式來(lái)書(shū)寫(xiě)±惆現(xiàn)在 JSON 的光環(huán)已經(jīng)逐漸超越了 XML辉川,各大網(wǎng)站提供的數(shù)據(jù)
接口一般都是 JSON芦岂。
JSON 是存儲(chǔ)和交換文本信息的語(yǔ)法李破,類似XML宠哄。
JSON 采用完全獨(dú)立于語(yǔ)言的文本格式,也使用了類似于 C 語(yǔ)言家族的習(xí)慣(包括 C, C++,
C#, Java, JavaScript, Perl, Python…)這些特性使 JSON 成為理想的數(shù)據(jù)交換語(yǔ)言嗤攻。
JSON 是一個(gè)新的人類可讀( human readable)的數(shù)據(jù)格式毛嫉,在過(guò)去幾年中已變得非常受歡迎,尤其是在 web 開(kāi)發(fā)中
基本類型
{
"name": " 張三 ",
"age": 18,
"sex": true
}
數(shù)組類型
[
{
"name":
" 張三 ",
"age":
18,
"sex":
true
},
{
"name":
" 李四 ",
"age":
19,
"sex":
false
}
]
對(duì)象嵌套
{
"name":
"teacher",
"computer":
{
"CPU": "intel7",
"disk": "512G"
},
"students":
[
{
"name": " 張三 ",
"age": 18,
"sex": true
},
{
"name": " 李四 ",
"age": 19,
"sex": false
}
]
}
解析方式
? ?? 使用 gson妇菱,Gson是一個(gè)Google提供的一個(gè)Java庫(kù),可用于將Java對(duì)象轉(zhuǎn)換為JSON表示承粤。它也可以被用來(lái)將 JSON 字符串轉(zhuǎn)換成一個(gè)等效的 Java 對(duì)象。
Gson的節(jié)點(diǎn)對(duì)象:
JsonElement : 所有的節(jié)點(diǎn)都是 JsonElement 對(duì)象.
JsonPrimitive : 基本的數(shù)據(jù)類型的節(jié)點(diǎn)對(duì)象闯团, JsonElement 的子類.
JsonNull : 代表空節(jié)點(diǎn)對(duì)象辛臊,即有 key,value 為空,JsonElement 的子類.
JsonObject : 對(duì)象數(shù)據(jù)類型的節(jié)點(diǎn)對(duì)象, JsonElement 的子類.
JsonArray : 數(shù)組數(shù)據(jù)類型的節(jié)點(diǎn)對(duì)象, JsonElement 的子類
JsonElement的取值
?????JsonPrimitive : value的取值對(duì)應(yīng) java 的
int,double,float,long,short,boolean,char,byte,String,BigDecimal,BigI
nteger,Number
JsonObject : value 的取值對(duì)應(yīng) java 的 Object 對(duì)象.
JsonArray : value 的取值對(duì)應(yīng) java 的 List 及其子類對(duì)象.
使用 fastjson,阿里巴巴 fastJson 是一個(gè) Json 處理工具包制妄,包括“序列化”和“反序列化”兩部分。