JSON是一種輕量級數據交換格式,目前在Web應用程序中廣泛使用。Java經常被用于解析JSON數據。下面將介紹Java中如何解析JSON串。
首先需要使用一個JSON庫,常用的有GSON和Jackson。本文以GSON為例。
1. 將JSON串解析為Java對象
// JSON串 String jsonStr = "{\"name\":\"Tom\",\"age\":18}"; // 將JSON串解析為Person對象 Gson gson = new Gson(); Person person = gson.fromJson(jsonStr, Person.class); // 定義Person類 public class Person { private String name; private int age; // getter和setter方法 }
2. 將JSON數組解析為Java對象列表
// JSON數組 String jsonArrayStr = "[{\"name\":\"Tom\",\"age\":18}, {\"name\":\"Jerry\",\"age\":20}]"; // 將JSON數組解析為Person對象列表 Gson gson = new Gson(); List<Person> personList = new ArrayList<>(); JsonArray jsonArray = JsonParser.parseString(jsonArrayStr).getAsJsonArray(); for (JsonElement jsonElement : jsonArray) { Person person = gson.fromJson(jsonElement, Person.class); personList.add(person); } // 定義Person類 public class Person { private String name; private int age; // getter和setter方法 }
3. 將Java對象轉換為JSON串
// Person對象 Person person = new Person(); person.setName("Tom"); person.setAge(18); // 將Person對象轉換為JSON串 Gson gson = new Gson(); String jsonStr = gson.toJson(person); // 輸出JSON串 System.out.println(jsonStr); // 定義Person類 public class Person { private String name; private int age; // getter和setter方法 }
4. 將Java對象列表轉換為JSON數組
// Person對象列表 List<Person> personList = new ArrayList<>(); Person tom = new Person(); tom.setName("Tom"); tom.setAge(18); personList.add(tom); Person jerry = new Person(); jerry.setName("Jerry"); jerry.setAge(20); personList.add(jerry); // 將Person對象列表轉換為JSON數組 Gson gson = new Gson(); JsonArray jsonArray = gson.toJsonTree(personList).getAsJsonArray(); // 輸出JSON數組 System.out.println(jsonArray); // 定義Person類 public class Person { private String name; private int age; // getter和setter方法 }
以上就是Java中解析JSON串的基本操作。使用JSON庫可以輕松地完成JSON與Java對象的轉換。