Object serialization的定义:
Object serialization 允许你将实现了Serializable接口的对象转换为字节序列,这些字节序列可以被完全存储以备以后重新生成原来的对象。
从对象序列化的定义可以知道,一个对象之所以要序列化,可能有以下两个原因
1)对象要进行网络传送。比如RMI,一台机器上的对象A可以调用另一台机器上的对象B的方法M,方法中,作为参数的对象O需要传送给B,这是两台机器可能存在于异构的环境中,因此要先将对象转化为跨平台的字节序列,然后通过网络传给B,B再在自己所在的机器上恢复该对象。
2)对象要持久化。在web开发中,session缓存,某些javaBean需要暂时持久化存储在硬盘中,因此需要序列化,存储对象的字节码。当需要的时候,再通过字节码恢复对象
总结:从上面可以知道,pojo实现序列化的原因是pojo对象需要持久化存储到数据库,或者被它的缓存存储在硬盘中。如果pojo存在于分布式环境中,也必须序列化。