2013-02-26 59 views
1

有一個光環類這樣的領域:Java Web服務 - 何時使用XmlAttribute?

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

..我發現,pricecount@XmlAttribute使用,但不能用於description。 爲什麼?

它們存儲的區別和方式有哪些?

回答

1

IBM's website

很好的文章如果有問題的信息可以被標記本身了 元素,把它放在一個元素。

如果信息適用於屬性表單,但最終可能爲 同一元素上具有相同名稱的多個屬性,請改爲使用子元素 。

如果信息需要處於標準類似DTD的屬性 類型,如ID,IDREF或ENTITY,請使用屬性。

如果信息不應該被標準化爲空格,請使用 元素。 (XML處理器,可以改變 屬性值的原始文本的方式標準化屬性。)

+1

我建議,從該網站作爲一個答案給的,至少所需的信息,並給予鏈接的網站。如果鏈接過期,整個答案將失效 – 2013-02-26 13:09:54

+0

謝謝你的建議@PradeepSimha – knowbody 2013-02-26 13:11:50

0

雙方的XmlElement和@XmlAttribute都相當自我記錄。

@XmlElement將被序列作爲XML元素(當前節點的子節點)

@XmlAttribute將被序列化爲XML屬性。

知道人的答案很清楚什麼時候選擇一個或另一個。

所以在你的榜樣,你應該得到類似

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