Java Web服务 - 何时使用XmlAttribute?

问题描述:

有一个光环类这样的领域:Java Web服务 - 何时使用XmlAttribute?

private String description; // a lot of text 
private long price; 
private int count; 

..我发现,pricecount@XmlAttribute使用,但不能用于description。 为什么?

它们存储的区别和方式有哪些?

IBM's website

很好的文章如果有问题的信息可以被标记本身了 元素,把它放在一个元素。

如果信息适用于属性表单,但最终可能为 同一元素上具有相同名称的多个属性,请改为使用子元素 。

如果信息需要处于标准类似DTD的属性 类型,如ID,IDREF或ENTITY,请使用属性。

如果信息不应该被标准化为空格,请使用 元素。 (XML处理器,可以改变 属性值的原始文本的方式标准化属性。)

+1

我建议,从该网站作为一个答案给的,至少所需的信息,并给予链接的网站。如果链接过期,整个答案将失效 – 2013-02-26 13:09:54

+0

谢谢你的建议@PradeepSimha – knowbody 2013-02-26 13:11:50

双方的XmlElement和@XmlAttribute都相当自我记录。

@XmlElement将被序列作为XML元素(当前节点的子节点)

@XmlAttribute将被序列化为XML属性。

知道人的答案很清楚什么时候选择一个或另一个。

所以在你的榜样,你应该得到类似

<halo price="..." count="..." > 
    <description>...</description> 
</halo>