从 XMLEncoder 的序列化中排除 byte[]

excluding byte[] from serialization of XMLEncoder

问题是如何从 XMLEncoder 的序列化中排除 byte[],但我需要将此字段保存到数据库。我有一个对象

public class MyClass1 implements Serializable {
 some properties ...
 private  byte[] a01_14_01_content;
 getters and setters ...
}

和编码器:

import java.beans.XMLEncoder;
public class MyEncoder{ 
...
public byte[] getBytes() {
    XMLEncoder e = new XMLEncoder(baos);
    e.writeObject(answer);
    e.close();
    return baos.toByteArray();
}
}

我需要序列化除数组字段之外的所有字段。 transient 属性 的修饰符不起作用; @Transient get 方法上的注释不起作用; @XMLTransient 属性 上的注释不起作用。 很简单,但我需要社区的帮助!

答案是在 get 方法上使用 @java.beans.Transient 注解而不是 @Transient。 在我的例子中 import javax.persistence.* 造成了 "bug" ))

public class MyClass1 implements Serializable {
 some properties ...
 private  byte[] a01_14_01_content;

 @javax.beans.Transient //not @Transient
 public byte[] getA01_14_01_content() {
 return a01_14_01_content;
 } 
//getters and setters ...
}