JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛应用于Web应用中。Java中有很多第三方库可以用于JSON解析,本文介绍常用的三种库。

  1. Jackson

Jackson是一个高效的JSON解析库,可以将JSON字符串转换为Java对象,也可以将Java对象转换为JSON字符串。使用Jackson解析JSON数据,需要导入jackson-core、jackson-annotations和jackson-databind三个jar包。

示例代码:

ObjectMapper mapper = new ObjectMapper(); // 创建ObjectMapper对象
String jsonStr = '{"name":"张三","age":18}'; // JSON字符串
User user = mapper.readValue(jsonStr, User.class); // 将JSON字符串转换为User对象
System.out.println(user.getName() + ',' + user.getAge()); // 输出:张三,18

User user2 = new User("李四", 20); // 创建User对象
String jsonStr2 = mapper.writeValueAsString(user2); // 将User对象转换为JSON字符串
System.out.println(jsonStr2); // 输出:{"name":"李四","age":20}
  1. Gson

Gson是Google开发的JSON解析库,可以将JSON字符串转换为Java对象,也可以将Java对象转换为JSON字符串。使用Gson解析JSON数据,需要导入gson.jar包。

示例代码:

Gson gson = new Gson(); // 创建Gson对象
String jsonStr = '{"name":"张三","age":18}'; // JSON字符串
User user = gson.fromJson(jsonStr, User.class); // 将JSON字符串转换为User对象
System.out.println(user.getName() + ',' + user.getAge()); // 输出:张三,18

User user2 = new User("李四", 20); // 创建User对象
String jsonStr2 = gson.toJson(user2); // 将User对象转换为JSON字符串
System.out.println(jsonStr2); // 输出:{"name":"李四","age":20}
  1. Json-lib

Json-lib是一个功能强大的JSON解析库,支持将JSON字符串转换为Java对象,也支持将Java对象转换为JSON字符串。使用Json-lib解析JSON数据,需要导入json-lib.jar包。

示例代码:

JSONObject json = JSONObject.fromObject('{"name":"张三","age":18}'); // 创建JSONObject对象
User user = (User) JSONObject.toBean(json, User.class); // 将JSONObject对象转换为User对象
System.out.println(user.getName() + ',' + user.getAge()); // 输出:张三,18

User user2 = new User("李四", 20); // 创建User对象
JSONObject json2 = JSONObject.fromObject(user2); // 将User对象转换为JSONObject对象
System.out.println(json2.toString()); // 输出:{"name":"李四","age":20}

以上是三种常用的JSON解析库的示例代码,读者可以根据自己的需要选择合适的库来解析JSON数据。

Java JSON 解析库:Jackson、Gson、Json-lib 比较和使用

原文地址: https://www.cveoy.top/t/topic/lKpe 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录