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



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

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.*导致了"错误"))

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 ...
}

相关内容

  • 没有找到相关文章

最新更新