【发布时间】:2018-02-05 09:32:21
【问题描述】:
我不明白为什么要解组。
这是我的课:
@XmlRootElement(name = "privileges")
@XmlAccessorType(XmlAccessType.FIELD)
public class Privilege {
@XmlAttribute(name = "number_residents")
private Integer numberResidents;
@XmlAttribute(name = "value")
private String value;
@XmlElement(name = "privilege")
private String privilage;
在 getter、setter、equals 和 toString 之下 }
我正在尝试解组。
File file = new File( "response.xml");
JAXBContext context = JAXBContext.newInstance(Privilege.class);
Unmarshaller unmarshaller = context.createUnmarshaller();
Privilege privilege = (Privilege) unmarshaller.unmarshal(file);
System.out.println(privilege);
但我总是得到:
Privilege{numberResidents=null, value='null', privilage='Test privilege'}
但是在这样的文件中:
<?xml version="1.0" encoding="UTF-8"?>
<privileges>
<privilege number_residents="3" value="bb2">Test privilege</privilege>
</privileges>
我需要你的帮助
【问题讨论】:
标签: java xml jaxb marshalling unmarshalling