Java 使用集合的集合生成XML
我想生成各种集合的集合。都有一个公共父级,每个都有一个Java 使用集合的集合生成XML,java,xml,jaxb,Java,Xml,Jaxb,我想生成各种集合的集合。都有一个公共父级,每个都有一个@XMLRootElement: @XmlRootElement("as") public class As extends DTOs { @XmlElement("a") private Collection collection; // } 元素中的注释应该是什么来创建: <as> <a> <name> </a>
@XMLRootElement
:
@XmlRootElement("as")
public class As extends DTOs {
@XmlElement("a")
private Collection collection;
//
}
元素
中的注释应该是什么来创建:
<as>
<a>
<name>
</a>
<bs>
<b><foo/></b>
<bs>
<cs>
<c/>
</cs>
</as>
我的第一次尝试是@xmlanyement(lax=true)
,但由于“非法注释”,这是一个异常。我想这是由于与具体对象中的@xmlement
发生了冲突
添加@xmlementref
时,它会在运行时使用
无法将类型“com.example.Bs”封送为元素,因为它缺少@XmlRootElement
注释
我认为这可能是继承造成的。您应该定义模式并使用此模式生成JAXB类。使用这些类,您可以进行与XML之间的转换 您应该定义模式并使用此模式生成JAXB类。使用这些类,您可以进行与XML之间的转换 如果您有一个公共根,可以使用@xmlementref:
@XmlRootElement("b")
public class B extend DTO {
}
public class DTOs extends DTO {
}
public class Element Extend DTO{
private Collection collection;
@XmlElementRef
getCollection() {
return collection;
}
}
<as>
<a>
<name>
</a>
<bs>
<b><foo/></b>
<bs>
<cs>
<c/>
</cs>
</as>