您的位置:首页 > 编程语言 > Java开发

java序列化

2016-07-09 17:54 260 查看
java序列化是指java对象转为二进制流;对应的还有反序列化,是把二进制流转为对象。java中序列化,要么是为了对象持久化,要么是为了网络传输。java对象序列化技术,在现在的应用开发中,越来越重要,特别是现在的分布式异构系统中,系统与系统中对象的网络传输,rpc调用。

看看java自带的序列化框架。

序列化:

ObjectOutputStream out = new ObjectOutputStream(//输出流,文件或者网络);
out.writeObject(obj);


反序列化:

ObjectInputStream in = new ObjectInputStream(// 输入流,文件或者网络);
Object obj1 = in.readObject();


使用简单,jdk自带方案。但是在实际的项目应用中,还存在几点不足:

1 序列化,反序列化效率不高
2 序列化后,二进制流比较大,不够最优
3 不支持多语言化

当然,还有其他的序列化方案,效率会高很多,支持多重语言。如facebook thrift , google protobuf , Hessian等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: