GSON 序列化与反序列化使用说明

前言

学习使用Google GSON库将Java对象序列化为JSON表示形式,并将JSON字符串反序列化为等效的Java对象。GSON提供简单的toJson()fromJson()方法将Java对象转换为JSON,反之亦然。

GSON
GSON

使用GsonBuilder创建Gson具有自定义配置的对象,例如漂亮的打印

//Gson gson = new Gson();
Gson gson = new GsonBuilder().setPrettyPrinting().create();
		
Employee emp = new Employee(1001, "Lokesh", "Gupta", "howtodoinjava@gmail.com");

String jsonString = gson.toJson(emp);

Employee empObject = gson.fromJson(jsonString, Employee.class);

1.依赖性

Maven依赖。访问maven存储库以获取最新版本。

$title(pom.xml)
<dependency>
  <groupId>com.google.code.gson</groupId>
  <artifactId>gson</artifactId>
  <version>2.8.5</version>
</dependency>

Gradle依赖。

<dependency>
dependencies {
  implementation 'com.google.code.gson:gson:2.8.5'
}

2.序列化 – 使用Gson编写JSON

Gson上下文中的序列化意味着将Java对象转换为其JSON表示。为了进行序列化,我们需要一个处理转换的Gson对象。接下来,我们需要调用函数toJson()并传递该Employee对象。

Employee emp = new Employee(1001, "Lokesh", "Gupta", "howtodoinjava@gmail.com");
         
Gson gson = new Gson();
 
String jsonString = gson.toJson(emp);
 
System.out.println(jsonString);

程序输出:

{
   "id":1001,
   "firstName":"Lokesh",
   "lastName":"Gupta",
   "email":"howtodoinjava@gmail.com"
}

2.反序列化 – 使用Gson读取JSON

Gson上下文中的反序列化意味着将JSON字符串转换为等效的Java对象。为了进行反序列化,我们需要一个Gson对象并从json()调用函数并在解析完成后传递两个参数,即JSON字符串和期望的java类型。

String jsonString = "{'id':1001, 'firstName':'Lokesh', 'lastName':'Gupta', 'email':'howtodoinjava@gmail.com'}";
         
Gson gson = new Gson();
 
Employee empObject = gson.fromJson(jsonString, Employee.class);
 
System.out.println(empObject);

程序输出:

Employee [id=1001, firstName=Lokesh, lastName=Gupta, email=howtodoinjava@gmail.com]

 

原创文章,作者:306829225,如若转载,请注明出处:https://blog.ytso.com/243652.html

(0)
上一篇 2022年4月11日
下一篇 2022年4月11日

相关推荐

发表回复

登录后才能评论