2009-10-16 55 views
3

我正在尋找一個XML序列化框架,它具有XML配置選項而不是註釋來命名類和字段。將Java對象序列化爲xml和後面(XML配置)

我看着簡單和XStream,但我沒有找到一種方法來做到這一點。我想我可以使用Spring IOC和XStreams aliasing,但是如果有任何框架可以爲我做到這一點,那當然會更好:)

回答

3

JiBX是一個Java to XML Binding框架,您可以在其中使用XML綁定。 XML有點冗長,有時可能難以管理,但對於任何XML配置來說都是如此。 我知道你說你已經看過xstream,但是一些xstream配置可以通過代碼完成(不是配置,但是通過配置xstream對象,例如省略字段)。我不確定這對你是否足夠,但你可以做一些沒有註釋的事情。

+0

+1 jibx是我所知道的唯一最新的編組框架 – skaffman

+0

乍一看,我認爲這正是我所需要的。 – Trick

0

EclipseLink JAXB (MOXy)具有基於JAXB元數據的外在約束力的文件

樣本文件看起來像:

<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"> 
    <java-types> 
     <java-type name="org.example.order.PurchaseOrder"> 
      <java-attributes> 
       <xml-attribute java-attribute="id"/> 
       <xml-element java-attribute="customer"> 
        <xml-java-type-adapter value="org.example.order.CustomerAdapter"/> 
       </xml-element> 
       <xml-element java-attribute="lineItems" name="line-item"/> 
      </java-attributes> 
     </java-type> 
    </java-types> 
</xml-bindings> 

欲瞭解更多信息,請參閱: - http://wiki.eclipse.org/EclipseLink/Examples/MOXy/EclipseLink-OXM.XML

0

我愛XStream的,因爲它大部分是Just Works TM

我還沒有嘗試過這個,或者給了它很多想法,但是您是否考慮過使用XStream來處理實際數據和它自己的配置?我想你可以使用XStream來讀取一個配置文件,然後在處理數據之前使用從中獲得的(簡單的String)數據作爲alias()方法調用的參數。