Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

แปลง XML เป็น POJO ด้วยไลบรารี Jackson ใน Java

Jackson เป็นไลบรารี Java ที่มีความสามารถ Data Binding อันทรงพลัง ให้ Framework สำหรับ Serialize Java Object เป็น JSON และ Deserialize JSON กลับเป็น Java Object ยังสามารถ แปลง XML เป็น POJO ได้โดยใช้เมธอด readValue() ของคลาส XmlMapper

Syntax

public <T> T readValue(XMLStreamReader r, Class<T> valueType) throws IOException

ตัวอย่าง: XML to POJO

import com.fasterxml.jackson.dataformat.xml.*;

public class XMLToPOJOTest {
    public static void main(String[] args) throws Exception {
        try {
            XmlMapper xmlMapper = new XmlMapper();
            Person pojo = xmlMapper.readValue(getXmlString(), Person.class);
            System.out.println(pojo);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    
    private static String getXmlString() {
        return "<person> <firstName>Adithya</firstName>" 
             + "<lastName>Jai</lastName>"
             + "<address>Bangalore</address>" + "</person>";
    }
}

// Person class (POJO)
class Person {
    private String firstName;
    private String lastName;
    private String address;
    
    public String getFirstName() { return firstName; }
    public void setFirstName(String firstName) { this.firstName = firstName; }
    public String getLastName() { return lastName; }
    public void setLastName(String lastName) { this.lastName = lastName; }
    public String getAddress() { return address; }
    public void setAddress(String address) { this.address = address; }
    
    public String toString() {
        return "Person[ firstName = " + firstName + ", lastName = " + lastName + ", address = " + address + " ]";
    }
}

ผลลัพธ์

Person[ firstName = Adithya, lastName = Jai, address = Bangalore ]

Dependency ที่ต้องการ: jackson-dataformat-xml