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

Java三种序列化方法对比

2018-02-15 12:00 633 查看

概述

序列化是讲对象转为字节流、反序列化是讲字节流转换回java。序列化对存储和传输对象非常有效。 文中对三种常见的序列化方法进行讨论

Java原生序列化

将需要序列化的类实现Serializable接口后,使用ObjectInputStream和ObjectOutputStream就能实现反序列化和序列化。

缺点:三种序列化方法中最低效的一种。

JSON

很多JSON类库,Google的GSON , Alibaba的FastJSON。个人喜欢用FastJSON、

不需要写一堆的Getter和Setter。它可以读取public的属性

优点: 很快,具备可读性 ,不需要对要序列化的类做特殊处理。

Google 的protobuf

三种方法中效率最高的一种。但需要些probuf配置文件,描述一个类应当如何进行序列化。 使用baidu提供的 jProtobuf可以通过标注的形式简化这一过程。

https://github.com/jhunters/jprotobuf

缺点:需要配置或者标注。

优点:压缩效率极高。速度极快。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息