2017-02-17 137 views
0

默認情況下,XStream是否處理JAXB @XmlTransient屬性? XStream似乎無視了@XmlTransient屬性&序列化字段。爲什麼XStream忽略@XmlTransient?

在下面的示例代碼中。即使我不想它,ExampleClass2也會被序列化。進一步的細節是這些類正在被OpenJPA填充。

XStream的代碼

XStream  _x0 =null; 
_x = XStreamImpl.getInstance(); 
_x.toXML(_object) 

類我想序列

@DataCache 
@Entity 
public class ExampleClass implements Serializable { 

    private short defaultOption; 

    private int primaryKey; 

    private short orderId; 

    @XmlTransient 
    private ExampleClass2 _exampleClass2; 

    @XmlTransient 
    public ExampleClass2 getTblPpwsCommCfgCombo() { 
     return _exampleClass2; 
    } 

    @XmlTransient 
    public void setExampleClass2(ExampleClass2 _exampleClass2) { 
     this._exampleClass2 = _exampleClass2; 
    } 

    public short getDefaultOption() { 
     return defaultOption; 
    } 
    public void setDefaultOption(short defaultOption) { 
     this.defaultOption = defaultOption; 
    } 
    public short getPrimaryKey() { 
     return primaryKey; 
    } 
    public void setPrimaryKey(int primaryKey) { 
     this.primaryKey = primaryKey; 
    } 
    public short getOrderId() { 
     return orderId; 
    } 
    public void setOrderId(short orderId) { 
     this.orderId = orderId; 
    } 
} 

回答

0

你可以使用@Transient批註或transiet關鍵詞:

@Transient 
private ExampleClass2 _exampleClass2;