JsonNode เป็นคลาสฐานสำหรับโหนด JSON ทั้งหมดที่สร้างโมเดลต้นไม้ JSON ส่วน ArrayNode เป็นคลาสโหนดที่แทนอาร์เรย์ที่แมปจากเนื้อหา JSON เราสามารถแปลง JsonNode เป็น ArrayNode ได้โดยการแปลงชนิด (typecasting) ArrayNode เพื่อดึงค่าโดยใช้เมธอด readTree() ของคลาส ObjectMapper และเมธอด get() สำหรับเข้าถึงค่าขององค์ประกอบที่ระบุของโหนดอาร์เรย์
ไวยากรณ์
public JsonNode readTree(String content) throws IOException, com.fasterxml.jackson.core.JsonProcessingException
ตัวอย่าง
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.core.JsonProcessingException;
public class JSonNodeToArrayNodeTest {
public static void main(String args[]) throws JsonProcessingException {
String jsonStr = "{\"Technologies\" : [\"Java\", \"Scala\", \"Python\"]}";
ObjectMapper mapper = new ObjectMapper();
ArrayNode arrayNode = (ArrayNode) mapper.readTree(jsonStr).get("Technologies");
if(arrayNode.isArray()) {
for(JsonNode jsonNode : arrayNode) {
System.out.println(jsonNode);
}
}
}
}ผลลัพธ์
"Java" "Scala" "Python"