如果我们分析EJB说无状态EJB Bean,则更高层次,它似乎是由RMI API创建的ejb框架。 我这么说的原因是: -
IN RMI也有远程接口。在命名查找时,我们得到了一个存根,它调用了skelton,内部调用了远程对象。
在EJB中,我们有home接口和远程接口,其实现由ejb容器提供(看起来只是存根) 在home接口上调用create时,它会给出远程对象,按照我的方式调用skelton,内部调用会话 对象
如果上述比较有意义,请告诉我?
答案 0 :(得分:3)
是的,EJB规范始终要求RMI兼容性(并且某些应用程序服务器构建在CORBA之上)。在EJB 3.0之前,远程EJB需要具有扩展EJBObject的组件接口(因此java.rmi.Remote),并且所有方法都需要抛出java.rmi.RemoteException。实际上,早期规范版本中不存在本地接口。 EJB规范试图通过允许容器管理远程对象的生命周期和可伸缩性来简化RMI。 (当然,它还有其他非远程目标。)