use*_*986 5 java serialization ejb java-ee
有没有理由为什么EJB类需要可序列化?我听说它与RMI正在被引用的事实有关.我知道RMI(远程方法调用)是如何工作的,在服务器端注册了一个远程对象,只有远程对象的存根被发送到客户端,而不是整个对象.
因此,在RMI应用程序中,远程对象的方法需要获取参数并返回可序列化的值,因为它们是通过网络发送的,而不是远程对象本身.
Ste*_*e C 11
实现javax.ejb.EntityBean,javax.ejb.SessionBean和javax.ejb.MessageDrivenBean的旧J2EE样式EJBS 应该可序列化的原因是历史的.这些扩展发生的原始javax.ejb.EnterpriseBean接口本身扩展了java.io.Serializable.在早期的EJB时代,人们认为这有助于在JVM之间移动bean.
实际实现Serializable的EJB的所有实际原因在EJB 2.0规范发布时消失了.
EJB 3的引入消除了对任何这些接口(以及随后的java.io.Serializable)的实现要求.
没有EJB规范,因为EJB 2.0已经指定EJB必须是可序列化的.由于接口继承,这只是隐含的.
隐式要求与EJB 3.x完全消失.