Java Bean是否需要实现接口Serializable
?为什么Java Bean必须是可序列化的?
11
A
回答
9
这是Javabeans specification中描述的“典型”特征之一。
这里是章节的摘录2.1什么是豆?
个人Java组件将在它们所支持的功能各不相同,但典型的统一特征 区分一个Java Bean是:
- 支持“自省”,使得构建工具可以分析如何一个bean的作品
- 支持“自定义”,以便在使用应用程序构建器时,用户可以自定义bean的外观和行为。
- 支持“事件”作为一种简单的通信隐喻,可以用于连接豆类。
- 支持“属性”,既可以用于定制,也可以用于程序使用。
- 支持持久性,以便可以在应用程序构建器中定制bean,然后将其自定义状态保存并稍后重新加载。
而这里的章5.5持久性内容的摘录:
所有bean必须支持序列化或外部化。
实际上,它没有明确的必要功能。一般来说,如果不执行Serializable
,它也会正常工作。无论何时您想将它们“保存”在硬盘上或通过网络发送“纯文本”,它都是非常有用的。例如,当它是要存储在HTTP会话中的会话作用域Bean并且服务器已经配置为在关闭/重新启动期间保持并恢复HTTP会话时。无论如何,只要你在消息中面对一个带有全限定类名的NotSerializableException
,那么它就足以让它实现Serializable
。
10
是。
按照定义 - Java bean就是这样,一个可序列化的 POJO(普通的旧Java对象),带有无参数构造函数和私有字段与getters/setters。
相关问题
- 1. @ApplicationScoped必须是可序列化的?
- 2. 为什么javabean必须实现可序列化的接口?
- 3. 演员的状态是否必须是可序列化的?
- 4. 为什么锁在java中是可序列化的?
- 5. C#。什么类型必须是可变
- 6. 什么是“Java Bean”?
- 7. Java:为什么单独的类必须是私有的
- 8. 为什么UISearchDisplayController必须是类变量?
- 9. 为什么可序列化的内部类不可序列化?
- 10. 为什么Java对象必须是8的倍数?
- 11. 为什么我必须将序列化的值反序列化两次? (wordpress/bbpress maybe_serialize)
- 12. 扩展Java可序列化类的目的是什么?
- 13. 为什么定制Java序列化
- 14. PHP“序列化”是否认为“html”必须是后缀?为什么它将其删除?
- 15. java序列化过程序列化是什么?
- 16. 为什么第二个参数必须是一个列表
- 17. 为什么Java中的HttpServlet实现可序列化?
- 18. 为什么ASP.NET MVC必须是一个Web应用程序?
- 19. 为什么枚举在java中的序列化是不同的
- 20. 为什么SAXException可序列化?
- 21. 为什么可序列化的类必须具有从类名获取实例的函数?
- 22. 为什么我必须将指针初始化为变量?
- 23. 什么是排序序列化列表的理想方式Java
- 24. 什么是可序列化?这是什么意思?
- 25. 的Java n必须是正
- 26. 为什么PostgreSQL可序列化事务认为这是冲突?
- 27. 为什么Java EE单例会话bean的字段不必是易失性的?
- 28. 有效匹配必须是序列的可选字符
- 29. 为什么完美的转发功能必须被模板化?
- 30. 变量“可运行”必须初始化
ApplicationScoped bean应该如何实现Serializable接口? – 2011-11-28 06:01:42