The JsonParserSequence เป็น คลาสตัวช่วยที่สามารถใช้สร้าง parser ที่มีตัวแยกวิเคราะห์ย่อยสองตัวที่วางอยู่ใน ลำดับเฉพาะ เราสามารถสร้างลำดับโดยใช้ คงที่ เมธอด createFlattened() ของ JsonParserSequence ชั้นเรียน
ไวยากรณ์
JsonParserSequence สาธารณะแบบคงที่ createFlattened (JsonParser ก่อน JsonParser วินาที)
ตัวอย่าง
<ก่อนหน้า>นำเข้า java.io.*;import com.fasterxml.jackson.core.*;import com.fasterxml.jackson.core.util.*;คลาสสาธารณะ JsonParserSequenceTest { สแตติกโมฆะ main (สตริง [] args) สาธารณะพ่น JsonParseException , IOException { String jsonString1 ="{\"id\":\"101\", \"name\":\"Ravi Chandra\", \"address\":\"Pune\"}"; String jsonString2 ="{\"id\":\"102\", \"name\":\"ราชา Ramesh\", \"address\":\"Hyderabad\", \"contacts\":[{ \"มือถือ\":\"9959984805\", \"บ้าน\":\"7702144400\"}]}"; JsonFactory jsonFactory =JsonFactory ใหม่ (); JsonParser jsonParser1 =jsonFactory.createParser (jsonString1); JsonParser jsonParser2 =jsonFactory.createParser (jsonString2); JsonParserSequence jsonParserSequence =JsonParserSequence.createFlattened (jsonParser1, jsonParser2); JsonToken jsonToken =jsonParserSequence.nextToken (); ในขณะที่ (jsonToken !=null) { สวิตช์ (jsonToken) { กรณี FIELD_NAME:System.out.println ("คีย์ฟิลด์:" + jsonParserSequence.getText ()); หยุดพัก; กรณี VALUE_FALSE:กรณี VALUE_NULL:กรณี VALUE_NUMBER_FLOAT:กรณี VALUE_NUMBER_INT:กรณี VALUE_STRING:กรณี VALUE_TRUE:System.out.println("ค่าคีย์:" + jsonParserSequence.getText()); หยุดพัก; } jsonToken =jsonParserSequence.nextToken(); } jsonParserSequence.close(); }}ผลลัพธ์
ฟิลด์คีย์:idKey value:101Key field:nameKey value:Ravi ChandraKey field:addressKey value:PuneKey field:idKey value:102Key field:nameKey value:Raja RameshKey field:addressKey value:HyderabadKey field:ContactKey field:mobileKey value:9959984805Key field:homeKey value:7702144400