【发布时间】:2010-12-02 12:51:13
【问题描述】:
我希望转换一个看起来像这样的类...
public class Amenity {
public String id;
public String value;
}
使用 JaxB 注释进入以下 XML:
<amenity id="id-string-here">value-string-here</amenity>
有谁知道在value 成员变量上使用什么注释来完成这个?到目前为止,我得到的最接近的是:
@XmlRootElement
public class Amenity {
@XmlAttribute
public String id;
@XmlElement
public String value;
}
不幸的是,这种方法不允许我指定 value 成员变量不应呈现为它自己的标签 <value></value>。
【问题讨论】:
-
正如许多人所提到的,这个问题的标题具有误导性,因为它询问了如何呈现 CDATA 块,但上面的示例并没有清楚地说明这一点。在我发布时,我不需要 CDATA 块,只需要了解 @XmlValue 注释。这就是为什么我将答案授予 jarnbjo。从那时起,我确实需要有关如何生成 CDATA 块的信息。所以随后的答案也非常有帮助。我都投了赞成票。感谢大家的帮助!
标签: java xml-serialization annotations jaxb jaxb2