使用 Java 中的 Gson 库将对象列表转换为 JSON?

javajsonobject oriented programmingprogramming

Gson  是一个可用于将 Java 对象转换为 JSON 表示的库。它还可用于将 JSON 字符串转换为等效的 Java 对象。要使用的主要类是 Gson ,我们可以通过调用 new Gson() 来创建它,并且可以使用 GsonBuilder  类来创建 Gson 实例

我们可以通过首先创建 Person  类并将 Person 对象列表转换为 JSON 来转换对象列表。

示例

import java.util.*;
import java.util.stream.*;
import com.google.gson.*;
public class JSONConverterTest {
   public static void main( String[] args ) {
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      List list = Stream.of(new Person("Raja", "Ramesh", 30, "9959984800"),
                            new Person("Jai", "Dev", 25, "7702144400"),
                            new Person("Adithya", "Sai", 21, "7013536200"),
                            new Person("Chaitanya", "Sai", 28, "9656444150"))
                            .collect(Collectors.toList());
      System.out.println("Convert list of person objects to Json:");
      String json = gson.toJson(list); // converts to json
      System.out.println(json);
   }
}
// Person classclass Person {
   private String firstName, lastName, contact;
   private int age;
   public Person(String firstName, String lastName, int age, String contact) {
      this.firstName = firstName;
      this.lastName = lastName;
      this.age = age;
      this.contact = contact;
   }
   public String toString() {
      return "[" + firstName + " " + lastName + " " + age + " " +contact +"]";
   }
}

输出

Convert list of person objects to Json:
[
{
   "firstName": "Raja",
   "lastName": "Ramesh",
   "contact": "9959984800",
   "age": 30
},
{
   "firstName": "Jai",
   "lastName": "Dev",
   "contact": "7702144400",
   "age": 25
},
{
   "firstName": "Adithya",
   "lastName": "Sai",
   "contact": "7013536200",
   "age": 21
},
{
   "firstName": "Chaitanya",
   "lastName": "Sai",
   "contact": "9656444150",
   "age": 28
}
]

相关文章