JSON或JavaScript Object Notation是一种轻量级的基于文本的开放标准,旨在用于人类可读的数据交换。JSON使用的约定是程序员已知的,包括C,C ++,Java,Python,Perl等。
有几种Java库可用于处理JSON对象。Jackson是一个简单的基于Java的库,用于将Java对象序列化为JSON,反之亦然。
Java中的Jackson API的ObjectMapper类提供了将Java对象转换为JSON对象,反之亦然的方法。
此类的writeValueAsString()方法接受JSON对象作为参数,并返回其各自的JSON字符串。
因此,使用Jackson库将Java对象转换为JSON字符串-
将以下Maven依赖项添加到pom.xml中
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.10.0.pr2</version> </dependency>
使用私有变量和setter / getter方法创建一个javabean / POJO对象。
创建另一个类(确保POJO类对此可用)。
在其中,创建POJO类的对象,使用setter方法为其设置所需的值。
实例化ObjectMapper类。
writeValueAsString()通过传递上面创建的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 JacksionExample {
   public static void main(String args[]) throws Exception {
      Student std = new Student();
      std.setId(001);
      std.setName("Krishna");
      std.setAge(30);
      std.setPhone(9848022338L);
      //创建ObjectMapper对象
      ObjectMapper mapper = new ObjectMapper();
      //将对象转换为JSONString-
      String jsonString = mapper.writeValueAsString(std);
      System.out.println(jsonString);
   }
}{"id":1,"name":"Krishna","age":30,"phone":9848022338}