如何使用 Java 中的对象模型通过 JsonWriter 序列化 JSON 对象?
javajsonobject oriented programmingprogramming
javax.json.JsonWriter 接口可以将 JSON 对象或数组结构写入 输出 源。类 javax.json.JsonWriterFactory 包含用于创建 JsonWriter 实例的方法。工厂实例可用于创建具有相同配置的多个编写器实例。我们可以使用javax.json.Json类的静态方法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"]}