Java JAXBContext将XML字符串与多个根元素解组
下面是我的XML字符串,我在访问Entity3列表时遇到问题Java JAXBContext将XML字符串与多个根元素解组,java,xml,jaxb,Java,Xml,Jaxb,下面是我的XML字符串,我在访问Entity3列表时遇到问题 <Entity1> <field1>Value1</field1> <field2>Value2</field2> <Entity2> <field3>Value1</field3> <field4>Value2</field4> </Entity2> <En
<Entity1>
<field1>Value1</field1>
<field2>Value2</field2>
<Entity2>
<field3>Value1</field3>
<field4>Value2</field4>
</Entity2>
<Entity3s>
<Entity3List>
<Entity3>
<field5>Value1</field5>
<field6>Value2</field6>
</Entity3>
<Entity3>
<field5>Value1</field5>
<field6>Value2</field6>
</Entity3>
</Entity3List>
</Entity3s>
</Entity1>
实体3
public class Entity2 {
private String field3;
private String field4;
}
public class Entity3 {
private String field5;
private String field6;
}
由于Entity3列表由两个根元素
和
包装,我应该如何注释它
使用这些类
实体1
@XmlRootElement(name= "Entity1")
public class Entity {
private String field1;
private String field2;
private Entity2 entity2;
private Entity3s entity3s;
public String getField1() {
return field1;
}
public void setField1(String field1) {
this.field1 = field1;
}
public String getField2() {
return field2;
}
public void setField2(String field2) {
this.field2 = field2;
}
@XmlElement(name = "Entity2")
public Entity2 getEntity2() {
return entity2;
}
public void setEntity2(Entity2 entity2) {
this.entity2 = entity2;
}
@XmlElement(name = "Entity3s")
public Entity3s getEntity3s() {
return entity3s;
}
public void setEntity3s(Entity3s entity3s) {
this.entity3s = entity3s;
}
}
实体2
@XmlRootElement
public class Entity2 {
private String field3;
public String getField3() {
return field3;
}
public void setField3(String field3) {
this.field3 = field3;
}
public String getField4() {
return field4;
}
public void setField4(String field4) {
this.field4 = field4;
}
private String field4;
}
Entity3s
public class Entity3s {
private Entity3List entity3List;
@XmlElement(name = "Entity3List")
public Entity3List getEntity3List() {
return entity3List;
}
public void setEntity3List(Entity3List entity3List) {
this.entity3List = entity3List;
}
}
实体3列表
public class Entity3List {
private List<Entity3> entity3s;
@XmlElement(name = "Entity3")
public List<Entity3> getEntity3s() {
return entity3s;
}
public void setEntity3s(List<Entity3> entity3s) {
this.entity3s = entity3s;
}
}
使用这些类
实体1
@XmlRootElement(name= "Entity1")
public class Entity {
private String field1;
private String field2;
private Entity2 entity2;
private Entity3s entity3s;
public String getField1() {
return field1;
}
public void setField1(String field1) {
this.field1 = field1;
}
public String getField2() {
return field2;
}
public void setField2(String field2) {
this.field2 = field2;
}
@XmlElement(name = "Entity2")
public Entity2 getEntity2() {
return entity2;
}
public void setEntity2(Entity2 entity2) {
this.entity2 = entity2;
}
@XmlElement(name = "Entity3s")
public Entity3s getEntity3s() {
return entity3s;
}
public void setEntity3s(Entity3s entity3s) {
this.entity3s = entity3s;
}
}
实体2
@XmlRootElement
public class Entity2 {
private String field3;
public String getField3() {
return field3;
}
public void setField3(String field3) {
this.field3 = field3;
}
public String getField4() {
return field4;
}
public void setField4(String field4) {
this.field4 = field4;
}
private String field4;
}
Entity3s
public class Entity3s {
private Entity3List entity3List;
@XmlElement(name = "Entity3List")
public Entity3List getEntity3List() {
return entity3List;
}
public void setEntity3List(Entity3List entity3List) {
this.entity3List = entity3List;
}
}
实体3列表
public class Entity3List {
private List<Entity3> entity3s;
@XmlElement(name = "Entity3")
public List<Entity3> getEntity3s() {
return entity3s;
}
public void setEntity3s(List<Entity3> entity3s) {
this.entity3s = entity3s;
}
}
这意味着如果标签是冗余的,我还需要为它创建一个类。这意味着如果标签是冗余的,我还需要为它创建一个类。