Java序列化之三: 常见实例分析

本文探讨了HTTPSession中对象实现Serializable接口的重要性,包括在Servlet容器重启或应用重载时保持会话状态,以及在集群环境中确保多主机间状态同步。同时介绍了为何Servlet本身需要实现Serializable接口的原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,HTTPSession与Serializale

一个很容易被人无视的事实是:保存在HTTPSession中的对象,最好要实现Serializable

接口。(当然,在大部分情况下即使不实现也不会程序也不会出错)


根据目前的调查结果,这样做的好处有两个:

① 当Servlet容器重新启动或者application reload的时候,为了保存最终用户的状态,

可以将HTTP Session中的对象序列化,在启动完成或者reload完成之后,可以重新反序列

化,让终端用户感受不到服务端重启或者reload。


源自以下网址
http://book.geocities.jp/bits_of_java/java/io/serializable/index.html
http://docs.oracle.com/cd/E21043_01/web.1111/b60993/sessions.htm

② 当Servlet容器做clustering的时候,HTTPSession中的对象序列化可以保证多台HOST上的状态同步。

源自以下网址

http://book.geocities.jp/bits_of_java/java/io/serializable/index.html


2,为什么Servlet实现了Serializable接口

参见上述理由的第2点

源自一下网址
http://www.jguru.com/faq/view.jsp?EID=46477

3,EJB与Serializable

为了能够远程调用EJB中的SessionBean,SessionBean在定义的时候必须要求实现了Serializable接口。

源自以下网址
http://www.ibm.com/developerworks/jp/websphere/library/java/ejb_intro/4.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值