国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Java教程 - java中fastjson生成和解析json數(shù)據(jù)(序列化和反序列化數(shù)據(jù))

java中fastjson生成和解析json數(shù)據(jù)(序列化和反序列化數(shù)據(jù))

2020-08-05 11:27PointNet Java教程

本篇文章主要介紹了java中fastjson生成和解析json數(shù)據(jù)(序列化和反序列化數(shù)據(jù)),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。

本文講解2點(diǎn)

1. fastjson生成和解析json數(shù)據(jù)

(舉例:4種常用類型:JavaBean,List<JavaBean>,List<String>,List<Map<String,Object>)

2.通過一個(gè)android程序測(cè)試fastjson的用法。

fastjson簡(jiǎn)介:

Fastjson是一個(gè)Java語(yǔ)言編寫的高性能功能完善的JSON庫(kù)。fastjson采用獨(dú)創(chuàng)的算法,將parse的速度提升到極致,超過所有json庫(kù),包括曾經(jīng)號(hào)稱最快的jackson。并且還超越了google的二進(jìn)制協(xié)議protocol buf。Fastjson完全支持http://json.org的標(biāo)準(zhǔn),也是官方網(wǎng)站收錄的參考實(shí)現(xiàn)之一。支持各種JDK類型。包括基本類型、JavaBean、Collection、Map、Enum、泛型等。支持JDK 5、JDK 6、Android、阿里云手機(jī)等環(huán)境。

一. fastjson生成json字符串(JavaBean,List<JavaBean>,List<String>,List<Map<String,Object>)

java" id="highlighter_723923">
?
1
String jsonStrng = JSON.toJSONString(object);

二. fastjson 解析json字符串為四種類型

1. JavaBean

?
1
Person person = JSON.parseObject(jsonString, Person.class);

2. List<JavaBean>

?
1
List<Person> listPerson =JSON.parseArray(jsonString, Person.class);

3. List<String>

?
1
List<String> listString = JSON.parseArray(jsonString, String.class);

4. List<Map<String,Object>>

 

復(fù)制代碼 代碼如下:

List<Map<String, Object>> listMap = JSON.parseObject(jsonString, new TypeReference<List<Map<String,Object>>>(){}); 

 

(注意:此處可看出fastjson反射機(jī)制比gson更準(zhǔn)確, id = 1001 通過fastjson反射仍是 id = 1001 , 而通過gson反射結(jié)果 為 id =1001.0 , 

JSON解析器fastjson(阿里巴巴出品,版本1.1.26),如果定義了JSONObject為{"JACKIE_ZHANG":"張學(xué)友","ANDY_LAU":"劉德華","LIMING":"黎明","Aaron_Kwok":"郭富城"},那么讀取值時(shí),KEY順序無序,測(cè)試代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import comalibabafastjsonJSONObject;
/**
 * Created by wangzhenfei on 14-4-
 */
public class FastJsonTest {
 public static void main(String[] args){
  String jsonStr = "{\"JACKIE_ZHANG\":\"張學(xué)友\",\"ANDY_LAU\":\"劉德華\",\"LIMING\":\"黎明\",\"Aaron_Kwok\":\"郭富城\"}" ;
 
 
  //做5次測(cè)試
  for(int i=0,j=5;i<j;i++)
  {
   JSONObject jsonObject = JSONObjectparseObject(jsonStr) ;
   for(javautilMapEntry<String,Object> entry:jsonObjectentrySet()){
    Systemoutprint(entrygetKey()+"-"+entrygetValue()+"\t");
   }
   Systemoutprintln();//用來?yè)Q行
  }
 }
}

運(yùn)行結(jié)果:

?
1
2
3
4
5
LIMING-黎明 Aaron_Kwok-郭富城JACKIE_ZHANG-張學(xué)友ANDY_LAU-劉德華
Aaron_Kwok-郭富城 ANDY_LAU-劉德華LIMING-黎明JACKIE_ZHANG-張學(xué)友
Aaron_Kwok-郭富城 JACKIE_ZHANG-張學(xué)友ANDY_LAU-劉德華LIMING-黎明
LIMING-黎明 ANDY_LAU-劉德華JACKIE_ZHANG-張學(xué)友Aaron_Kwok-郭富城
JACKIE_ZHANG-張學(xué)友 LIMING-黎明ANDY_LAU-劉德華Aaron_Kwok-郭富城

解決辦法:定義為JSONArray,代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import comalibabafastjsonJSONArray;
 
/**
 * Created by wangzhenfei on 14-4-
 */
public class FastJsonTest {
 public static void main(String[] args){
  String jsonStr = "[{\"JACKIE_ZHANG\":\"張學(xué)友\"},{\"ANDY_LAU\":\"劉德華\"},{\"LIMING\":\"黎明\"},{\"Aaron_Kwok\":\"郭富城\"}]" ;
  //做5次測(cè)試
  for(int i=0,j=5;i<j;i++)
  {
   JSONArray jsonArray = JSONArrayparseArray(jsonStr);
 
   for(int k=0;k<jsonArraysize();k++){
    Systemoutprint(jsonArrayget(k) + "\t");
   }
   Systemoutprintln();//用來?yè)Q行
  }
 }
}

運(yùn)行結(jié)果為:

?
1
2
3
4
5
{"JACKIE_ZHANG":"張學(xué)友"} {"ANDY_LAU":"劉德華"}{"LIMING":"黎明"}{"Aaron_Kwok":"郭富城"}
{"JACKIE_ZHANG":"張學(xué)友"} {"ANDY_LAU":"劉德華"}{"LIMING":"黎明"}{"Aaron_Kwok":"郭富城"}
{"JACKIE_ZHANG":"張學(xué)友"} {"ANDY_LAU":"劉德華"}{"LIMING":"黎明"}{"Aaron_Kwok":"郭富城"}
{"JACKIE_ZHANG":"張學(xué)友"} {"ANDY_LAU":"劉德華"}{"LIMING":"黎明"}{"Aaron_Kwok":"郭富城"}
{"JACKIE_ZHANG":"張學(xué)友"} {"ANDY_LAU":"劉德華"}{"LIMING":"黎明"}{"Aaron_Kwok":"郭富城"}

如果就想要定義為JSONObject,而不是JSONArray,可以選用其他JSON解析器,個(gè)人推薦使用google的gson,文檔明顯比fastjson好很多(從這里可以看出阿里巴巴和谷歌的差距):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import comgooglegsonJsonElement;
import comgooglegsonJsonObject;
import comgooglegsonJsonParser;
 
/**
 * Created by wangzhenfei on 14-4-
 */
public class FastJsonTest {
 public static void main(String[] args){
  String jsonStr = "{\"JACKIE_ZHANG\":\"張學(xué)友\",\"ANDY_LAU\":\"劉德華\",\"LIMING\":\"黎明\",\"Aaron_Kwok\":\"郭富城\"}" ;
  //做5次測(cè)試
  for(int i=0,j=5;i<j;i++)
  {
   JsonObject jsonObject = (JsonObject) new JsonParser()parse(jsonStr);
   for(javautilMapEntry<String,JsonElement> entry:jsonObjectentrySet()){
    Systemoutprint(entrygetKey()+"-"+entrygetValue()+"\t");
   }
   Systemoutprintln();//用來?yè)Q行
  }
 }
}

運(yùn)行結(jié)果:

?
1
2
3
4
5
JACKIE_ZHANG-"張學(xué)友" ANDY_LAU-"劉德華" LIMING-"黎明" Aaron_Kwok-"郭富城"
JACKIE_ZHANG-"張學(xué)友" ANDY_LAU-"劉德華" LIMING-"黎明" Aaron_Kwok-"郭富城"
JACKIE_ZHANG-"張學(xué)友" ANDY_LAU-"劉德華" LIMING-"黎明" Aaron_Kwok-"郭富城"
JACKIE_ZHANG-"張學(xué)友" ANDY_LAU-"劉德華" LIMING-"黎明" Aaron_Kwok-"郭富城"
JACKIE_ZHANG-"張學(xué)友" ANDY_LAU-"劉德華" LIMING-"黎明" Aaron_Kwok-"郭富城"

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://www.cnblogs.com/goody9807/p/4244862.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲精品www久久久久久广东 | 日韩在线观看中文字幕 | 精品国产乱码一区二区三区 | 亚洲精品久久久久久一区二区 | 午夜精品久久久久久久久久久久 | 在线观看国产视频 | 成人免费看 | 久久国产精品亚洲 | 亚洲国产精品一区在线 | 黄色影片免费观看 | av福利在线观看 | 91大片| 国产一区二区三区四区五区密私 | 毛片免费看电影 | 久久精品国产一区二区三区不卡 | 日韩一区二区三区在线视频 | 日本精品中文字幕 | 成人精品视频免费在线观看 | 国产日韩欧美一区二区 | 久久亚洲精品中文字幕 | 羞羞视频免费网站 | 一级电影免费在线观看 | 久章操 | 欧美亚洲国产一区二区三区 | 日韩中文字幕视频 | 国产精品99久久久久久宅男 | 亚洲综合中文字幕在线观看 | 欧美午夜精品 | 日韩一区二区视频 | 91久久精品国产91久久性色tv | 久久最新 | 久久久久91 | 午夜国产 | 亚洲精彩视频在线 | 国产片在线免费观看 | 久久大陆 | 中文字幕在线视频第一页 | 日韩成人影片 | 欧美一级片免费在线观看 | 国产高清一级片 | 韩日电影|