Jackson là thư viện dựa trên Java, hữu ích để chuyển đổi đối tượng Java sang JSON và ngược lại. Jackson API nhanh hơn các API khác, tiêu tốn ít bộ nhớ hơn và phù hợp cho các đối tượng lớn. Chúng ta chuyển đổi POJO sang định dạng XML bằng phương thức writeValueAsString() của lớp XmlMapper, truyền instance POJO tương ứng làm tham số.
Cú pháp
public String writeValueAsString(Object value) throws JsonProcessingException
Ví dụ minh họa
import com.fasterxml.jackson.dataformat.xml.*;
public class POJOToXmlTest {
public static void main(String args[]) throws Exception {
try {
XmlMapper xmlMapper = new XmlMapper();
Person pojo = new Person();
pojo.setFirstName("Raja");
pojo.setLastName("Ramesh");
pojo.setAddress("Hyderabad");
String xml = xmlMapper.writeValueAsString(pojo);
System.out.println(xml);
} catch(Exception e) {
e.printStackTrace();
}
}
}
// Lớp Person
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; }
}
Kết quả đầu ra
<Person xmlns="">
<firstName>Raja</firstName>
<lastName>Ramesh</lastName>
<address>Hyderabad</address>
</Person>
Mẹo: Để bỏ qua namespace xmlns="", có thể cấu hình xmlMapper.configure(SerializationFeature.WRITE_XML_DECLARATION, true) hoặc dùng XmlMapper.builder().defaultUseWrapper(false).build().