繁体   English   中英

为什么大多数Java框架类都扩展可序列化接口?

[英]Why do most of the classes of Java frameworks extend serializable interface?

序列化是一种技术,我们将转换对象发送为字节代码,以便通过网络发送它。 现在,许多Java框架类(Spring,hibernate(SessionFactory)等)扩展了可序列化的接口? 为什么会这样?

为什么在网上搜索,我发现了这段文字“序列化的类可以支持一致的版本控制,并且足够灵活以允许逐步开发应用程序对象模式”。

这是上面问题的正确答案吗? 如果是,请解释一下;否则,类扩展可序列化接口的实际原因是什么?

我认为您可以将其视为预防措施 :从一开始就将您的类可序列化不会花费您太多。

但是,稍后添加到您的代码中可能会变得更加昂贵。

除此之外:使类可序列化实际上会迫使您在创建类时考虑/考虑此类“方面”。 因此,它可以帮助提高设计质量-因为您不会忘记这方面。

一个可能的原因是,如果需要,Web容器可以将会话数据存储在磁盘上(例如,服务器负载高并且会话在一段时间内处于非活动状态)。 为此,存储在会话中的所有数据(可传递的,即会话数据直接或间接引用的所有实例)必须可序列化。

除了您在会话中存储的任何数据外,许多框架也将一些数据存储在会话中(会话范围的Bean,与Spring相关的示例)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM