我的问题是:来自xml
计划:
<topnode>
topNodeValue
<bottomnode/>
</topnode>
使用Jaxb生成的类看起来像
class topnode {
List<bottomnode> bottomnodeList;
}
这不会生成值字段来设置topnode的值。
我怎样才能实现这一目标?感谢。
答案 0 :(得分:3)
当元素的内容包含字符和元素数据时,它被称为混合内容。在JAXB (JSR-222)中,它与@XmlMixed
注释一起映射,如:
class topnode {
@XmlMixed
String text;
List<bottomnode> bottomnodeList;
}
混合内容的使用可能很棘手,因为由于用于格式化的文本节点,您可能会得到意外的结果。有关更详细的说明,请参阅以下类似问题的答案。
答案 1 :(得分:0)
对于文本节点,请使用@XmlValue
注释。像这样:
class topnode {
@XmlValue
String topNodeValue;
List<bottomnode> bottomnodeList;
}
作为建议,请尝试尊重Java命名标准,如果它与xml元素不匹配,请使用name
注释的@Xml...
属性。