Gson 中 fromJson() 和 toJson() 方法之间的差异?
Gson 是一个用于 Java 的库,它可以用来生成 JSON。我们可以使用 Gson 的 fromJson() 方法将 JSON 字符串解析为 Java 对象,并使用 Gson 的 toJson() 方法将 Java 对象转换为 JSON 字符串。fromJson() 方法中有两个参数,第一个参数是我们要解析的 JSON 字符串,第二个参数是要解析 JSON 字符串的 Java 类。我们可以将一个参数传递给 toJson() 方法,即我们要转换为 JSON 字符串的 Java 对象。
fromJson() 的语法
public <T> fromJson(java.lang.String json, java.lang.Class<T> classOfT) throws JsonSyntaxException
示例
import com.google.gson.*; public class FromJsonMethodTest { public static void main(String[] args) { String jsonString = "{'id':101, 'firstName':'Jai','lastName':'Adithya'}"; Gson gson = new Gson(); Employee emp = gson.fromJson(jsonString, Employee.class); System.out.println(emp); } } // Employee class class Employee { private int id; private String firstName; private String lastName; public Employee() {} public int getId() { return id; } public void setId(int id) { this.id = id; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("Id : " + id); sb.append(", FirstName : " + firstName); sb.append(", Last Name : " + lastName); return sb.toString(); } }
输出
Id : 101, FirstName : Jai, Last Name : Adithya
toJson() 的语法
public java.lang.String toJson(java.lang.Object src)
示例
import com.google.gson.*; public class ToJsonMethodTest { public static void main(String[] args) { Employee emp = new Employee(); emp.setId(110); emp.setFirstName("Raja"); emp.setLastName("Ramesh"); Gson gson = new Gson(); String jsonString = gson.toJson(emp); System.out.println(jsonString); } } // Employee class class Employee { private int id; private String firstName; private String lastName; public Employee() {} public int getId() { return id; } public void setId(int id) { this.id = id; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } }
输出
{"id":110,"firstName":"Raja","lastName":"Ramesh"}
广告