我们如何利用 Java 中的 JsonGenerator 创建 JSON?


JsonGenerator 是一个基类,定义用于编写 JSON 内容的公共 API。使用 JsonFactory 实例的工厂方法创建实例。一旦我们从工厂实例中获取JsonGenerator ,然后使用 writeStartObject() 编写 JSON 对象值的开始标记, writeFieldName() 方法用于编写字段名称,writeString() 方法用于输出字符串值,writeStartArray() 方法用于编写数组值的开始标记和 writeEndObject() 方法用于编写 JSON 对象值的结束标记。

语法

public abstract class JsonGenerator extends Object implements Closeable, Flushable, Versioned

示例

import java.io.*;
import com.fasterxml.jackson.core.*;
public class JsonGeneratorTest {  
   public static void main(String args[]) throws IOException {
      JsonFactory factory = new JsonFactory();
      StringWriter jsonObjectWriter = new StringWriter();
      JsonGenerator generator = factory.createGenerator(jsonObjectWriter);
      generator.useDefaultPrettyPrinter(); // pretty print JSON
      generator.writeStartObject();
      generator.writeFieldName("empid");
      generator.writeString("120");
      generator.writeFieldName("firstName");
      generator.writeString("Ravi");
      generator.writeFieldName("lastName");
      generator.writeString("Chandra");
      generator.writeFieldName("technologies");
      generator.writeStartArray();
      generator.writeString("SAP");
      generator.writeString("Java");
      generator.writeString("Selenium");
      generator.writeEndArray();
      generator.writeEndObject();
      generator.close(); // to close the generator
      System.out.println(jsonObjectWriter.toString());
   }
}

Learn Java in-depth with real-world projects through our Java certification course. Enroll and become a certified expert to boost your career.

输出

{
   "empid" : "120",
   "firstName" : "Ravi",
   "lastName" : "Chandra",
   "technologies" : [ "SAP", "Java", "Selenium" ]
}

更新于:2020-07-06

6 千+ 浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告