黑马程序员技术交流社区

标题: 所谓序列化 [打印本页]

作者: cofujun    时间: 2016-6-3 22:28
标题: 所谓序列化
所谓序列化就是把java复杂对根据某种约定变成101011001.......的一个长字节列数据存放或者传输到某个地方存起来,硬盘就是一个文件,数据库就是一个blob字段。
需要的时候再根据之前的转换约定反序列化转化成你转之前的对象数据,继续供你使用。
这个类似将字符串通过某种编码变成字节数组一样的道理,你可以把字符串编码看成是java对象序列化的一个特例实现。

java提供的序列化对象就是一个接口,告诉大家一个约定,凡是实现了这个接口的java类,其实例都是可以序列化的,反之就是告诉大家这个类是不能序列化的,也就是不能保存对象当时的数据状态。

序列化的作用主要是为了把java复杂对象变成可传输的参数对象供对方使用。

java序列化的一个经典应用就是JMS消息,java任何实现了序列化的类其实例可以被JMS进行数据交换。发送方将java实例对象序列化成字节数组放到JMS队列,接收方拿到这个字节数组再根据约定反序列化编程需要的实例对象。这样做的目的是为了保证发送方和接收方是松耦合的设计。接收方不需要发送方的环境就可以得到复杂的java对象参数。


作者: java小白怕不    时间: 2016-6-3 22:45
老大 也是蛮拼的啊.  哈哈哈哈.
作者: hero_king    时间: 2016-6-3 22:55
嗯虽然看完还是不太懂,但是写的还是不错的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2