Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

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

출력

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