如何在 Java 中使用 Object Model 通过 JsonWriter 序列化 JSON 对象?


 javax.json.JsonWriter 接口可以将 JSON 对象或数组结构写入输出 javax.json.JsonWriterFactory 类包含创建JsonWriter 实例的方法。可以使用工厂实例创建具有相同配置的多个编写器实例。我们可以使用 javax.json.Json 类的static 方法createWriter()根据输出源创建写入器。

语法

public static JsonWriter createWriter(Writer writer)

在以下示例中,我们可以使用 JsonWriter 接口序列化 JSON 对象。

示例

import java.io.StringWriter;
import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonObjectBuilder;
import javax.json.JsonWriter;
public class JsonWriterTest {
   public static void main(String[] args) {
      JsonObject jsonObj = Json.createObjectBuilder()
                 .add("name", "Adithya")
                 .add("age", 25)
                 .add("salary", 40000)
                 .add("address",
                      Json.createObjectBuilder().add("street", "Madhapur")
                                                .add("city", "Hyderabad")
                                                .add("zipCode", "500084")
                                                .build()
                      )
                 .add("phoneNumber",
                      Json.createArrayBuilder().add("9959984000")
                                               .add("7702144400")
                                               .build()
                     )
                 .build();

      StringWriter stringWriter = new StringWriter();
      JsonWriter writer = Json.createWriter(stringWriter);
      writer.writeObject(jsonObj);
      writer.close();
      System.out.println(stringWriter.getBuffer().toString());
   }
}

输出

{"name":"Adithya","age":25,"salary":40000,"address":{"street":"Madhapur","city":
"Hyderabad","zipCode":"500084"},"phoneNumber":["9959984000","7702144400"]}

更新于: 08-Jul-2020

3K+ 查看

开启您的 职业生涯

完成课程即可获得认证

开始
广告