有时候我们可能会用到json格式的数据进行数据的传输,那么我们怎么把接收到的数据解析出来呢?
下面有两种方法:
1、通过谷歌的Gson来进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
两个VO类:
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类型:
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()); print: success
}
}
2、通过json-org.jar包进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
一个VO类:
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类型:
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();
}
}
分享到:
相关推荐
总结,Java解析JSON主要依靠第三方库,如Jackson和Gson,它们提供了解析JSON字符串到Java对象,以及将Java对象序列化为JSON字符串的功能。对于复杂的JSON结构,可以通过创建相应的Java类来映射。在实际操作中,务必...
3. **JSONParser**:这是解析JSON数据的主要工具类,它提供了`parse()`方法,可以从JSON格式的字符串或输入流中解析出JSON对象或数组。 4. **JSONStringer** 和 **JSONWriter**:这两个类用于生成JSON格式的字符串...
Java解析JSON文件是Java开发中常见的一项任务,特别是在与Web服务交互或处理API响应时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简洁和易于阅读及编写的特点,被广泛应用于网络数据传输...
附件内容为:Java组装map数据,然后转换为json数据格式;Java解析json数据
此压缩包包含两个jar:json-lib-2.4-jdk15.jar和ezmorph-1.0.6.jar 这两个包都是java解析json数据的依赖包,而且是最新版,开源的东东好多人还要分,俺不要分,只希望对你有用。
标题提到的是“java解析json格式字符串所需jar包”,描述指出我们可以自行下载这些库。在提供的压缩包文件中,包含了以下几个关键的jar包: 1. **commons-collections-3.2.1.jar**:这是Apache Commons Collections...
接下来,我们将讨论如何使用`org.json`库获取和解析JSON数据。假设我们有一个JSON字符串,例如: ```json { "name": "John", "age": 30, "city": "New York" } ``` 在Java中,我们可以使用`JSONObject`类来解析...
使用该方法可以轻松解析JSON数组,方便取出JSON数据
- 使用Java脚本步骤来解析JSON数据。 #### 3. **解析JSON** - 使用`JSON Simple`库解析JSON。 - 根据实际需求遍历JSON对象并提取所需字段。 - 对于每个字段,根据其类型进行相应的转换。 #### 4. **连接数据库...
Java中解析JSON数据主要依赖于一些库,如org.json库(包含JSONObject和JSONArray类)。 在Java中,解析JSON数据的步骤通常分为以下几个部分: 1. **导入相关库**:首先,你需要在项目中引入JSON库。如果是使用...
标题与描述均提到了“JAVA解析JSON”,这表明文档主要关注的是如何在Java环境中解析JSON数据。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在Java...
好用的json包,更容易解析json数据结构
Java解析Json字符串是Java开发中常见...总结来说,Java解析Json字符串涉及的关键知识点有:Json格式的理解、Gson库的使用、Jackson库的使用以及org.json库的使用。掌握这些,将有助于你在处理Json数据时更加得心应手。
本资源“Java中使用JSON格式数据工具类及使用说明”提供了关于如何在Java中处理JSON数据的方法,包括将JSON数据转化为Java对象以及对特殊数据类型的处理,特别是时间格式化。以下是关于这些知识点的详细说明: 1. *...
本篇文章将深入探讨如何在Java中解析JSON数据。 首先,我们需要一个JSON库来帮助我们进行解析工作。Java标准库并不内置JSON处理功能,但有多个开源库可供选择,如Gson、Jackson、org.json和JSON-P。这里我们以广泛...
解决当内存资源不充足时大数据量的JSON文本解析为JSON对象会导致内存溢出的问题。 基于org.json的部分源代码,以及新增的JsonLazyer类。 原理:用时创建的规则降低传统解析器一次性将文本转成Java对象而占用大量内存...
C#的一个解析JSON的工具类,像java一样优雅的解析JSON数据,包含有JSONObject和JSONArray对象。 JSONObject json = new JSONObject(); json.Put("sex", "男"); json.Put("age", 123); json.Put("name", "张三"); ...
本文将深入探讨如何在Java中解析JSON字符串,以满足后端处理前端传递的数据需求。 首先,理解JSON的基本结构至关重要。JSON格式通常包含键值对,可以是对象(用花括号 `{}` 包裹)或数组(用方括号 `[]` 包裹)。...
本教程将详细讲解如何在Idea中使用Java解析JSON文件,并将数据有效地导入到MySQL数据库。 首先,我们需要理解JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器...