首页 > 文章列表 > 我们如何使用Java中的JsonGenerator创建一个JSON呢?

我们如何使用Java中的JsonGenerator创建一个JSON呢?

java json JsonGenerator
308 2023-08-25

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

语法

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

Example

的中文翻译为:

示例

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());
   }
}

输出

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