1. 使用 Jackson 库
a. 将 Java 对象转为 JSON 字符串
import com.fasterxml.jackson.databind.ObjectMapper;public class Main {public static void main(String[] args) throws Exception {Person person = new Person("John", 30);// 创建 ObjectMapper 对象ObjectMapper objectMapper = new ObjectMapper();// Java 对象转 JSON 字符串String jsonString = objectMapper.writeValueAsString(person);System.out.println(jsonString);}
}class Person {private String name;private int age;public Person(String name, int age) {this.name = name;this.age = age;}// getter 和 setter 方法
}
b. 将 JSON 字符串转为 Java 对象
import com.fasterxml.jackson.databind.ObjectMapper;public class Main {public static void main(String[] args) throws Exception {String jsonString = "{\"name\":\"John\",\"age\":30}";// 创建 ObjectMapper 对象ObjectMapper objectMapper = new ObjectMapper();// JSON 字符串转 Java 对象Person person = objectMapper.readValue(jsonString, Person.class);System.out.println(person.getName());System.out.println(person.getAge());}
}class Person {private String name;private int age;// getter 和 setter 方法
}
2. 使用 Gson 库
a. 将 Java 对象转为 JSON 字符串
import com.google.gson.Gson;public class Main {public static void main(String[] args) {Person person = new Person("John", 30);// 创建 Gson 对象Gson gson = new Gson();// Java 对象转 JSON 字符串String jsonString = gson.toJson(person);System.out.println(jsonString);}
}class Person {private String name;private int age;public Person(String name, int age) {this.name = name;this.age = age;}// getter 和 setter 方法
}
b. 将 JSON 字符串转为 Java 对象
import com.google.gson.Gson;public class Main {public static void main(String[] args) {String jsonString = "{\"name\":\"John\",\"age\":30}";// 创建 Gson 对象Gson gson = new Gson();// JSON 字符串转 Java 对象Person person = gson.fromJson(jsonString, Person.class);System.out.println(person.getName());System.out.println(person.getAge());}
}class Person {private String name;private int age;// getter 和 setter 方法
}
3、总结
- Jackson 和 Gson 都是非常流行的 Java 库,用于处理 JSON 数据。
- Jackson 在性能和功能上相对更为丰富,而 Gson 简单易用。