废话不多说直接上代码:
public
static
void
main(String[]
args)
throws
IOException, ClassNotFoundException {
CustAux
aux
=
new
CustAux(1L);
File
file
=
new
File("E://123.TXT");
//序列化(序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程)转存物理设备
/* FileOutputStream
os = new FileOutputStream(file);
ObjectOutputStream
oos = new ObjectOutputStream(os);
oos.writeObject(aux);*/
//反序列化
FileInputStream fis
=
new
FileInputStream(file);
ObjectInputStream
ois
=
new
ObjectInputStream(fis);
CustAux
readObject
= (CustAux)ois.readObject();
System.out.println(readObject.getCustId());
}
public
class
CustAux
extends
CustBase
implements
Serializable{
public
CustAux(){
}
public
CustAux(Long
custId){
this.custId
=
custId;
}
private
static
final
long
serialVersionUID
= 1L;
private
Long
custId;
}
总结:
1)Java序列化就是把对象转换成字节序列,而Java反序列化就是把字节序列还原成Java对象。
2)采用Java序列化与反序列化技术,一是可以实现数据的持久化,在MVC模式中很是有用;二是可以对象数据的远程通信。