【发布时间】:2019-05-28 11:33:09
【问题描述】:
我正在尝试解析一个简单的 XML 文件,如下所示:
<customer id="100">
<age value=" 29"/>
<name value="Bob"/>
</customer>
我是这样使用JAX的库的:
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Customer {
@XmlAttribute(name = "id")
String id;
@XmlAttribute(name = "value")
String value;
String name;
String age;
public String getName() {
return name;
}
@XmlElement(name = "value")
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
@XmlElement(name = "value")
public void setAge(String age) {
this.age = age;
}
public String getId() {
return id;
}
@XmlElement(name = "id")
public void setId(String id) {
this.id = id;
}
}
有一个 IllegalAnnotationExceptions。 我已通过此链接过期:here 但没有成功。
【问题讨论】:
-
age和name不是 XML 中的属性。它们是子节点。如果您的 XML 类似于<customer id="100" age="29" name="Bob">...,那将会有所不同。那么age和name将是您的customer节点的直接属性。 -
我的 XML 文件无法更改,抱歉。该示例从此处提取:mkyong.com/java/jaxb-hello-world-example 但在我的情况下报告 xml