EJB2.0中什么时候用local interface,什么时候用remote interface

    技术2022-05-11  133

    EJB2.0中什么时候用local interface,什么时候用remote interface

    local interface是EJB2.0的新特性,它让你无需反复的网络通信就可以存取你的EJB组件。它也让你去传递非可序列化参数,非常顺手。因此remote interface的价值是什么?好,它实际上不是一个有价值的东东,除非:    1.你需要远程存取你的系统(就是说从一个远程web层),或者    2.你试着去单独测试你的EJB组件,并且需要从一个独立的      客户端做试验来存取它们。

    local interface和remote interface的问题是代码有一点点区别。local interface有不同的接口名,不使用portableRemoteobject.narrow()并且也没有RemoteException抛出。因为这个,你需要重新写客户端代码来从两种接口之间切换。这是通过编程调节性能带来的不幸结果。为了限制你需要的记录的量,你需要在你编码之前决定你的bean的客户端是本地的还是远程的。举个例子,如果你在建设一个基于web的系统,那么你应该决定你的系统是一个在一个process中的完整的J2EE应用,或者你的web层是否从你的EJB层分离开来成为一个独立的process。

    最后说一点,如果你从一个非常远程的客户端连接你的EJB deployment(比如远程用户下载的applet或application),那么考虑用基于XML的web service来表现你的EJB系统,而不是用remote interface。


    最新回复(0)