JSON或JavaScript Object Notation是一种轻量级的基于文本的开放标准,旨在用于人类可读的数据交换。JSON使用的约定是程序员已知的,包括C,C ++,Java,Python,Perl等。
有几种Java库可用于处理JSON对象。Google Gson是一个简单的基于Java的库,用于将Java对象序列化为JSON,反之亦然。它是Google开发的开源库。
Google的Gson库提供了一个具有相同名称(Gson)的类,它是该库的主要类。
此类提供了一个名为toJson()的方法,该方法有多种变体,其中一个可以接受Java对象并将其转换为JSON对象并返回。
因此,使用GSON库将Java对象转换为JSON字符串-
将以下Maven依赖项添加到pom.xml中
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
使用私有变量和setter / getter方法创建一个javabean / POJO对象。
创建另一个类(确保POJO类对此可用)。
在其中,创建POJO类的对象,使用setter方法为其设置所需的值。
实例化Gson类。
toJson()
通过传递上面创建的POJO对象来调用该方法。
检索并打印获得的JSON。
import com.google.gson.Gson;
class Student {
private int id;
private String name;
private int age;
private long phone;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public long getPhone() {
return phone;
}
public void setPhone(long phone) {
this.phone = phone;
}
}
public class ObjectTOString {
public static void main(String args[]) {
Student std = new Student();
std.setId(001);
std.setName("Krishna");
std.setAge(30);
std.setPhone(9848022338L);
//创建Gson对象
Gson gSon = new Gson();
String jsonString = gSon.toJson(std);
System.out.println(jsonString);
}
}
{"id":1,"name":"Krishna","age":30,"phone":9848022338}