Fastjson對(duì)象轉(zhuǎn)map JAVA為什么要返回JSON數(shù)據(jù)?
JAVA為什么要返回JSON數(shù)據(jù)?這個(gè)問(wèn)題,更確切提問(wèn)應(yīng)該要是:數(shù)據(jù)只是請(qǐng)求為什么要前往json數(shù)據(jù),特別是前端與后端的交互,JAVA只是許多編程語(yǔ)言的一種,現(xiàn)在論用什么編號(hào)語(yǔ)言,大部分后端與前端基本
JAVA為什么要返回JSON數(shù)據(jù)?
這個(gè)問(wèn)題,更確切提問(wèn)應(yīng)該要是:數(shù)據(jù)只是請(qǐng)求為什么要前往json數(shù)據(jù),特別是前端與后端的交互,JAVA只是許多編程語(yǔ)言的一種,現(xiàn)在論用什么編號(hào)語(yǔ)言,大部分后端與前端基本是數(shù)據(jù)接受交互。
JSON是什么?
昨天彼此分享了《Spring Boot 返回 JSON 數(shù)據(jù),一分鐘搞定!》,好些人對(duì)JSON還沒(méi)有一個(gè)清晰的認(rèn)識(shí),今天棧長(zhǎng)帶大家來(lái)見(jiàn)過(guò)下什么是JSON。
有一種就是JSON(JavaScript Object Notation)的輕量級(jí)數(shù)據(jù)交換格式還能夠松蠟XML的工作。它就是JSON。
數(shù)據(jù)格式比較比較簡(jiǎn)單的,很易讀寫(xiě),格式大都?jí)嚎s的,電腦資源帶寬小,也易推導(dǎo)這種語(yǔ)言。
客戶端JavaScript也可以很簡(jiǎn)單按照eval()并且JSON數(shù)據(jù)的讀取,包括ActionScript,C,C#,ColdFusion,Java,JavaScript,Perl,PHP,Python,Ruby等語(yǔ)言服務(wù)器端語(yǔ)言,以便日后服務(wù)器端的解析。
各語(yǔ)言對(duì)JSON支持什么的不光好,當(dāng)初Ajax的流行,JSON格式傳輸就更不流行了。JSON常被用作序列化,推薦閱讀:關(guān)于Java序列化你應(yīng)該要知道的一切。
如果沒(méi)有到這里你還不很清楚?
JSON是什么,那就我就發(fā)大招了!
反正我在為公司面試時(shí)的時(shí)候,我偶爾會(huì)有提起,如果我還不知道JSON是個(gè)什么玩意?你怎么說(shuō)說(shuō)我,讓我很清楚是個(gè)什么東西。(下面都是我的個(gè)人明白,因明白因人而已,順耳即可!)
問(wèn)了這么多多人,當(dāng)然結(jié)果也不是我想的,大多數(shù)的答案有這些。
它是前端和后臺(tái)用戶交互用的。它是注冊(cè)表鍵值對(duì)的。
以上2點(diǎn)都很多。也有一些亂七八糟的東西的已經(jīng)遠(yuǎn)離目標(biāo)了JSON。那就它估計(jì)是怎樣的?應(yīng)該是這么多回答我,個(gè)人其實(shí)!
簡(jiǎn)單的方法,它只是一個(gè)字符串,它僅僅三個(gè)有規(guī)則的字符串。(重點(diǎn))然后它的表達(dá)(表現(xiàn)出來(lái))形式是鍵值對(duì)的。其實(shí)相當(dāng)帶有Java語(yǔ)言里的Map,Objective-C里的字典,其他語(yǔ)言都有填寫(xiě)的,我說(shuō)實(shí)話其他語(yǔ)言我可不知道!
我為啥用MapString泛型,而且理論上它的鍵值對(duì)估計(jì)全是字符串,Why?這個(gè)問(wèn)題問(wèn)的好,我這個(gè)可以這樣回答我你,因?yàn)樗旧硎亲址?/p>
上面說(shuō)的理論上表達(dá),那么換算目前我們要用的鍵值對(duì)允許什么呢?可以支持什么String、Number、Array在內(nèi)Boolean、null什么的。
它的作用是為了交互的,不肯定會(huì)Web項(xiàng)目的前后端交互過(guò)程也是可以接口,配置文件,文件存儲(chǔ)等等都就ok啦。目前移動(dòng)端也很火,好象的項(xiàng)目都會(huì)用JSON來(lái)傳輸。
它能受到什么?
簡(jiǎn)潔明快、很簡(jiǎn)單、體積小等。
入門太容易,又高效。
跨語(yǔ)言,目前移動(dòng)端Android、IOS像是項(xiàng)目構(gòu)造也是其他語(yǔ)言需要提供接口(JSON),移動(dòng)端無(wú)法讀取接口的開(kāi)發(fā)?!?
它和XML對(duì)比?
可讀性
看了網(wǎng)上的各種帖子,有說(shuō)可讀性非常,但是基本是是說(shuō)XML可讀性好,我如果說(shuō)還湊和。也可以打打個(gè)平手。
可擴(kuò)展性
他們都說(shuō),“XML天生有很好的擴(kuò)展性,JSON不過(guò)也有,沒(méi)有什么是XML能擴(kuò)展,JSON肯定不能的。
但是JSON在Javascript主場(chǎng)作戰(zhàn),是可以存儲(chǔ)文件Javascript合么對(duì)象,有著XML無(wú)法比擬的優(yōu)勢(shì)”。我深表贊同一半,我覺(jué)著這些帖子是老帖子,XML也可以靈活擴(kuò)展是只不過(guò)各種語(yǔ)言有允許的其他Jar包,類庫(kù)等。
但早在JSON火出聲后,JSON的支持包,類庫(kù)等,不會(huì)相信每個(gè)語(yǔ)言都很多。像Java就有Jackson、goson、json-lib、FastJson等等多的回。
編碼難度
XML有有DOM,SAX,STAX等解析技術(shù),JSON也有我上面說(shuō)的那些,都可以啦。
解碼難度
同上。
解碼編碼效率
噢!解析XML有清潔液CPU、你造嗎?
nodejs如何將map轉(zhuǎn)換為json?
givemapnextMap()(#39key1#39,#39value1#39)(#39key2#39,#39value2#39
)//Map轉(zhuǎn)JSON字符串letmap_string([]
)console.log(#39map-r26json:#39,map_string)//JSON字符串轉(zhuǎn)mapcan'tobj(map_string)can'tnew_mapfutureMap()for(givekeythe(string)){future_(key,string[key])}console.log(#39json-gtmap:#39,fun_map)