JAXB注解,可以通过JAXB轻松实现对象和XML之间的转换。
public class Main {
public static void main(String args[]) {
try {
Dog dog = new Dog();
dog.setId(1000L);
dog.setName("xiaoWang");
dog.setAge(10);
Writer writer = new StringWriter();
JAXBContext jc = JAXBContext.newInstance(Dog.class);
Marshaller ms = jc.createMarshaller();
ms.marshal(dog, writer);
String result = writer.toString();
System.out.println("对象转XML字符串: " + result);
System.out.println("----------------------------------------");
Unmarshaller unmarshaller = jc.createUnmarshaller();
Dog dog1 = (Dog) unmarshaller.unmarshal(new StringReader(result));
System.out.println("翻转XML为对象:" + dog1.toString());
} catch (JAXBException e) {
e.printStackTrace();
}
}
}
@XmlRootElement
class Dog {
private Long id;
private String name;
private Integer age;
@XmlElement(name = "编号")
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "Dog{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
'}';
}
}