The javax.json แพ็คเกจจัดเตรียม Object Model API เพื่อประมวลผล JSON Object Model API เป็น API ระดับสูงที่มีโมเดลอ็อบเจ็กต์ที่ไม่เปลี่ยนรูปแบบสำหรับออบเจ็กต์ JSON และโครงสร้างอาร์เรย์ โครงสร้าง JSON เหล่านี้สามารถแสดงเป็นโมเดลวัตถุได้โดยใช้ JsonObject และ JsonArray อินเทอร์เฟซ เราสามารถใช้ JsonGenerator อินเทอร์เฟซเพื่อเขียนข้อมูล JSON ไปยังเอาต์พุตในลักษณะสตรีมมิ่ง JsonGenerator.PRETTY_PRINTING เป็นคุณสมบัติการกำหนดค่าเพื่อสร้าง JSON ได้อย่างสวยงาม
เราสามารถปรับใช้ JSON แบบพิมพ์ที่สวยงามในตัวอย่างด้านล่าง
ตัวอย่าง
import java.io.*; import java.util.*; import javax.json.*; import javax.json.stream.*; public class JSONPrettyPrintTest { public static void main(String args[]) { String jsonString = "{\"name\":\"Raja Ramesh\",\"age\":\"35\",\"salary\":\"40000\"}"; StringWriter sw = new StringWriter(); try { JsonReader jsonReader = Json.createReader(new StringReader(jsonString)); JsonObject jsonObj = jsonReader.readObject(); Map<String, Object> map = new HashMap<>(); map.put(JsonGenerator.PRETTY_PRINTING, true); JsonWriterFactory writerFactory = Json.createWriterFactory(map); JsonWriter jsonWriter = writerFactory.createWriter(sw); jsonWriter.writeObject(jsonObj); jsonWriter.close(); } catch(Exception e) { e.printStackTrace(); } String prettyPrint = sw.toString(); System.out.println(prettyPrint); // pretty print JSON } }
ผลลัพธ์
{ "name": "Raja Ramesh", "age": "35", "salary": "40000" }