转载:《为什么项目中实体类要实现序列化呢?》

转至:http://blog.csdn.net/sy13060026219/article/details/50330117

原文:

  简单的说就是每当客户端访问某个能开启会话功能的资源,web服务器就会创建一个HTTPSession对象,每个HTTPSession对象都会占用一定的内存,如果在同一个时间段内访问的用户太多,就会消耗大量的服务器内存,为了解决这个问题我们使用一种技术:session的持久化

什么是session持久化?

web服务器会把暂时不活动的并且没有失效的HTTPSession对象转移到文件系统或数据库中储存,服务器要用时在把他们转载到内存。

现在我们言归正传,为什么要实现序列化?

把HTTPSession保存到文件系统或数据库中需要采用序列化的方式,把HTTPSession从文件系统或数据库中装载到内存需要采用反序列化来恢复对象的每个属性,所以我们要实现java.io.Serializable

我的理解:就像我们搬桌子,桌子太大了不能通过比较小的门,所以我们要把它拆了再运进去,这个拆桌子的过程就是序列化。

而反序列化就是等我们需要用桌子的时候再把它窦起来,这个过程就是反序列化

 

我的理解:

  假如一个亿的用户同时访问某网站,web服务器会创建一个亿HTTPSession对象,每个Session都有自己业务相关的pojo实体类对象,这些数据在使用的时候,存放于内存中。在不用的时候存放于磁盘中。序列化目的就是为了解决数据从磁盘到内存的相互转换,称之为序列化和反序列化。

 

转载于:https://www.cnblogs.com/pecool/p/8067007.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值