java实现序列化的两种方法
来源:互联网 发布:mysql fetch row 编辑:程序博客网 时间:2024/05/17 01:34
Serialization(序列化)是一种将对象以一连串的字节描述的过程。Java序列化API提供一种处理对象序列化的标准机制。
通常采用 implements java.io.Serializable 的方式就可以了,这种方式简单,没有要实现的任何方法。
public class Entity implements java.io.Serializable
当进行序列化的时候:
首先JVM会先调用writeReplace方法,在这个阶段,我们可以进行张冠李戴,将需要进行序列化的对象换成我们指定的对象.
跟着JVM将调用writeObject方法,来将对象中的属性一个个进行序列化,我们可以在这个方法中控制住哪些属性需要序列化.
Externalizable 是一个有实际方法需要实现的interface,包括writeExternal和readExternal,是Serializable接口的子接口:
public class Entity implements java.io.Externalizable {
private Object writeReplace() throws ObjectStreamException {
System.out.println("writeReplace invoked");
return this;
}
private Object readResolve() throws ObjectStreamException {
System.out.println("readResolve invoked");
return this;
}
public Object serialize() throws IOException, ClassNotFoundException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.writeObject(this);
ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
转自http://blog.163.com/maomaoyu_1012/blog/static/19060130520116144189294/
- java实现序列化的两种方法
- java 对象序列化的两种方法
- Android序列化的两种方法
- Avro序列化的两种实现方法:静态实现和动态实现
- 序列化的两种实现方式
- java实现多线程的两种方法
- java实现多线程的两种方法
- JAVA多线程的两种实现方法
- java 定时器实现的两种方法
- Java线程的两种实现方法
- java实现多线程的两种方法
- java实现多线程的两种方法
- java两种实现线程的方法
- JAVA类实现序列化的方法
- Java中实现序列化的两种方式 Serializable 接口和 Externalizable接口
- 序列化的两种实现方式Serializable,Parcelable
- 序列化的两种实现及优劣比较
- python序列插入的两种实现
- QueryPerformanceFrequency() 计算程序运行时间
- UIView-Positioning
- Swift中类的初始化器与继承
- Spring Web MVC 处理Http请求
- 内幕:一位Adobe中国区遭裁员工的“陈述”
- java实现序列化的两种方法
- C++高效程序设计
- Python的迭代器和生成器
- Eclipse中Android模拟器设备信息消失问题
- Struts2框架中的处理http
- Android Fragment详解
- Python 有两个内建的模块(getopt,optparse)用于处理命令行参数
- 导出本地文件时弹出文件路径选择对话框
- Android反编译xml文件