java 解析json数据fastjson
时间: 2023-10-26 07:27:52 浏览: 111
java解析json数据
在Java中,可以使用fastjson库来解析JSON数据。下面是一个示例代码,演示如何使用fastjson解析JSON数据:
```java
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class JsonParser {
public static void main(String[] args) {
// JSON字符串
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
// 解析为JSONObject对象
JSONObject jsonObject = JSON.parseObject(jsonString);
// 获取JSONObject中的属性值
String name = jsonObject.getString("name");
int age = jsonObject.getIntValue("age");
String city = jsonObject.getString("city");
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("City: " + city);
// 解析为Java对象
User user = JSON.parseObject(jsonString, User.class);
System.out.println("Name: " + user.getName());
System.out.println("Age: " + user.getAge());
System.out.println("City: " + user.getCity());
// JSON数组字符串
String jsonArrayString = "[{\"name\":\"John\", \"age\":30}, {\"name\":\"Alice\", \"age\":25}]";
// 解析为JSONArray对象
JSONArray jsonArray = JSON.parseArray(jsonArrayString);
// 遍历JSONArray
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject obj = jsonArray.getJSONObject(i);
String objName = obj.getString("name");
int objAge = obj.getIntValue("age");
System.out.println("Object " + (i+1) + ":");
System.out.println("Name: " + objName);
System.out.println("Age: " + objAge);
}
}
}
class User {
private String name;
private int age;
private String city;
// 省略getter和setter方法
}
```
在这个示例代码中,我们首先将JSON字符串解析为JSONObject对象,然后使用`getString()`和`getIntValue()`等方法获取JSON中的属性值。另外,我们还演示了如何将JSON字符串解析为Java对象,以及如何解析JSON数组。
阅读全文