一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - JAVA使用Gson解析json數(shù)據(jù)實例解析

JAVA使用Gson解析json數(shù)據(jù)實例解析

2020-04-08 14:35jerrylsxu JAVA教程

JSON(JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式,易于閱讀和編寫,同時也易于機器解析和生成。接下來通過本文給大家介紹JAVA使用Gson解析json數(shù)據(jù)實例解析,需要的朋友參考下吧

JSON(JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式,易于閱讀和編寫,同時也易于機器解析和生成。同XML一樣是一種“傳輸格式”。JSON采用與編程語言無關的文本格式,便于數(shù)據(jù)傳輸、存儲、交換。

封裝類Attribute:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public class Attribute {
private int id;
private String name;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}

另一個封裝類GsonDataAnalysis:

?
1
2
3
4
5
6
7
8
9
public class GsonDataAnalysis {
private List<Attribute> list;
public List<Attribute> getList() {
return list;
}
public void setList(List<Attribute> list) {
this.list = list;
}
}

測試類Main方法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/**
* Gson解析json數(shù)據(jù)
* @author ForeverLover
* @version 2015-04-19
*/
public class GsonTest {
public static void main(String[] args) {
String sTotalString = "{\"list\": [" +
"{\"id\":\"1\",\"name\":\"Tom\",\"age\":\"12\"}," +
"{\"id\":\"2\",\"name\":\"Marry\",\"age\":\"18\"}" +
"]}";
Gson gson = new Gson();
GsonDataAnalysis gda = gson.fromJson(
sTotalString, GsonDataAnalysis.class);
for(int i = 0; i < gda.getList().size(); i ++) {
System.out.print("ID號:" + gda.getList().get(i).getId() + " ");
System.out.print("姓 名:" + gda.getList().get(i).getName() + " ");
System.out.println("年 齡:" + gda.getList().get(i).getAge());
}
}
}

注:在使用Gson類的時候在工程中要添加Gson.jar包。

下面給大家介紹java 解析json格式數(shù)據(jù)

有時候可能會用到json格式進行數(shù)據(jù)的傳輸,那么怎么把接收到的數(shù)據(jù)解析出來呢? 下面介紹兩種解析json數(shù)據(jù)的方法:

1、通過谷歌的Gson來進行解析:

json數(shù)據(jù):sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};

兩個VO類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
public class SurveyVO {
private String surveyId;
private String surveyName;
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String getSurveyId() {
return surveyId;
}
public void setSurveyId(String surveyId) {
this.surveyId = surveyId;
}
public String getSurveyName() {
return surveyName;
}
public void setSurveyName(String surveyName) {
this.surveyName = surveyName;
}
}
public class SurveyListVO {
private String message;
private List<SurveyVO> result;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public List<SurveyVO> getResult() {
return result;
}
public void setResult(List<SurveyVO> result) {
this.result = result;
}
}

json格式轉換成object類型:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class fromGson() {
sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{"surveyid":"2","surveyname":"C"}]};
Gson gson = new Gson();
SurveyListVO surveyListVO = gson.fromJson(sTotalString,
SurveyListVO.class);
for (int i = 0; i < surveyListVO.getResult().size(); i++) {
System.out.print(surveyListVO.getResult().get(i)
.getSurveyId());
print: 1////2
System.out.print(surveyListVO.getResult().get(i)
.getSurveyName());
print: B///C
System.out.print(surveyListVO.getMessage());
}
}

2、通過json-org.jar包進行解析:

json數(shù)據(jù):sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};

一個VO類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class SurveyVO {
private String surveyId;
private String surveyName;
public String getSurveyId() {
return surveyId;
}
public void setSurveyId(String surveyId) {
this.surveyId = surveyId;
}
public String getSurveyName() {
return surveyName;
}
public void setSurveyName(String surveyName) {
this.surveyName = surveyName;
}
}

json格式轉換成object類型:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class fromJson() {
sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{"surveyid":"2","surveyname":"C"}]};
JSONObject json;
try {
json = new JSONObject(sTotalString);
JSONArray results = json.getJSONArray("result");
for (int i = 0; i < results.length(); i++) {
SurveyVO surveyVO = new SurveyVO();
JSONObject result = results.getJSONObject(i);
System.out.println(result.getString("surveyId")+" "+result.getString("surveyName"));
surveyVO.setSurveyId(result.getString("surveyId"));
surveyVO.setSurveyName(result.getString("surveyName"));
surveyVOList.add(surveyVO);
}
} catch (JSONException e) {
e.printStackTrace();
}
}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 午夜爱情动作片P | 扒开腿开嫩苞 | 深夜影院深a久久 | 亚洲邪恶天堂影院在线观看 | 日韩基地1024首页 | 国产成人精品三级在线 | 特级www| ady@ady9.映画网 | 日本漫画被黄漫免费动 | 513热点网| 天美传媒tm0065| 久草在线草a免费线看 | 青青久久精品国产免费看 | 雪恋电影完整版免费观看 | 久久99精品久久久久久园产越南 | 欧美色在线 | 女人张开腿让男人桶视频免费大全 | 青柠影视在线播放观看高清 | 欧美国产日本精品一区二区三区 | 亚洲国产精品日本无码网站 | 国产午夜免费 | 亚洲国产精品一区二区三区久久 | 亚洲欧美日韩另类在线 | 免费看一区二区三区 | 久久99re2在线视频精品 | 日本加勒比在线精品视频 | 男人j放进女人的p视频免费 | 欧美男男gaygayxxx | 亚洲国产一区二区三区青草影视 | 乌克兰一级毛片9一18 | 高清一级做a爱免费视 | 国产成人啪精品午夜在线播放 | 日韩欧美成末人一区二区三区 | 欧美一级片在线视频 | 午夜无码片在线观看影院 | 青草娱乐极品免费视频 | 亚洲AV无码专区国产乱码网站 | 99精品热视频 | 狠狠色婷婷日日综合五月 | 国内揄拍国内精品久久 | 操妈小说|