[英]Reusing the Java (de)serialization in implementing Externalizable
我想實現java.io.Externelizable
,它本質上是說java.io.Serializable
可以做一些修改。 Java序列化機制中有什么鈎子(如果有的話)? 或者,是否有任何外部庫可以以開放/可擴展的方式准確地模擬Java序列化機制?
對於序列化的小型自定義,您不需要實現java.io.Externalizable
。 只需像以前一樣實現java.io.Serializable
,並在類中實現以下兩個方法:
private void writeObject(ObjectOutputStream oos) {
oos.defaultWriteObject();
// custom serialization
oos.writeInt(notSerializableObj.getId());
}
private void readObject(ObjectInputStream ois) {
ois.defaultReadObject();
// custom de-serialization
notSerializableObj = new NotSerializableObj(ois.readInt());
}
當出於性能或安全原因要完全更改對象序列化方式(基礎算法本身)時,主要使用java.io.Externalizable
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.