哈哈,提问的有意思
接口本身只是提供一种规范,J2EE并不像你想像中的那样多呀
1、只需要Home接口,目的是返回你所创建的Remote接口的实例,
2、Remote接口,只是为了定义你所需要的业务方法,只是业务方法,没有在此接口中声明的方法不能被远程调用。
3、Bean只是实现你所定义的业务方法。
以下是图示
远程计算机通过JNDI名字找到--> Home接口-->生成Remote接口的实例-->提供业务方法为远程计算机服务。
以上是作为远程计算机所能看到的工作,而不需要关心业务方法的实现。业务方法的实现是由EJB本身在服务器端实现的。只把需要的结果通过远程方法返回给调用者

解决方案 »

  1.   

    一个企业Bean的远程客户端有以下特征:
    l 它可以运行在一个与它访问的企业Bean不同的机器和一个不同的Java虚拟机(Java virtual machine JVM)环境中。但并不是必须的。
    l 它可以是一个Web应用或者一个J2EE的应用程序客户端,也可以是其他的企业Bean。
    l 对于远程客户端,企业Bean的位置是透明的。
    要创建一个可以远程访问的企业Bean你必须为它编写一个Remote接口和一个Home接口。Remote接口定义商业方法,不同的企业Bean有不同的商业方法(这个是废话,因为企业Bean是根据商业逻辑划分的实体或者处理过程)。如BankAccountEJB有两个名字为debit(借)和credit(贷)的商业方法。Home接口定义企业Bean的生命周期方法create和remove方法。对EntityBean,Home接口还定义查找方法(finder)和家族(home)方法。查找方法用来定位EntityBean。家族方法是被调用以操作所有的EntityBean实例的,就是说这些方法的调用对于对应EntityBean的实力都起作用。
      

  2.   

    本地接口
    企业Bean的本地客户端特征:
    l 它必须和被调用的企业Bean在同一个java虚拟机环境中。
    l 它可以是Web应用或者其他的企业Bean。
    l 对于本地客户端,企业Bean的位置是不透明的。
    l 它们通常是访问CMP的其他EntityBean。(一般是会话Bean。在J2EE设计模式一书中描述的会话外观模式就是这种情况,用会话Bean调用EntityBean,以免客户端反复调用EntityBean的细粒度数据方法。)
    要创建一个允许本地访问的企业Bean,你必须编写一个Local接口和一个Local Home接口。相应的,Local接口定义商业方法,Local Home接口定义企业Bean的生命周期和查找方法(