`
- 浏览:
321724 次
- 来自:
...
-
从JBUIDER6中翻译的关于接口的资料:
一个EJB至少为会话BEAN或实体BEAN提供两种接口。对于EJB 1.x,你至少要创建一个home interface和remote interface;对于EJB 2.0可以有一个Remote home,Remote interface,还可以有一个Local home,Local interface。Remote home,Remote interface为客户端提供了BEAN的远程视图,而Local home,Local interface为客户端提供了BEAN的本地视图。remote and/or local home interface定义了客户端程序用来创建、定位、销毁BEAN实例的方法;remote/local interface实现了BEAN的商业方法客户端是通过remote/local interface来访问这些方法的。
BEAN的home interface,无论是remote还是local,控制了BEAN的生命周期。它包含了创建、查找、删除一个BEAN实例的方法。作为BEAN的提供商,你必须定义home 接口,但可以不实现它。EJB容器会产生一个home对象,并返回一个引用给BEAN。
一个EJB的客户端可以有BEAN的远程视图或本地视图,remote bean有一个home interface,它扩展了EJBHome interface;local bean有一个home interface,它扩展了EJBLocalHome interface。每个remote /local interface都扩展了javax.ejb.EJBHome interface。
一个实体BEAN是被设计用来为多个客户端服务的,一个客户端创建了实体BEAN,其他客户端也应该可以使用它。
remote or local interface描述了客户端程序可以调用的商业方法。当在remote or local interface中定义了这些方法后,你要在BEAN class中实现它,客户端不会直接访问BEAN,他们是通过remote or local interface来访问这些方法的。
remote or local interface中定义的方法必须遵守以下原则:
它必须是public的;
如果是定义在remote interface中的方法,它必须抛出java.rmi.RemoteException;如果不是,它不能抛出java.rmi.RemoteException。
所有客户端能访问的方法必须在remote or local interface中定义。
BEAN的interface的几种选择:
选择Remote意味着EJB Designer生成一个Bean class,Remote home和Remote interface。
选择Local意味着EJB Designer生成一个Bean class,Local home和Local interface。
如果选择Remote/Local,EJB Designer将生成Bean class,Remote home,Remote interface,Local home和Local interface。在JBUILDER中,会话BEAN默认是remote的,实体BEAN默认是local的。
如果你为一个会话BEAN (Component)选择了Remote/Local,将生成的文件如下:
ComponentHome - the remote home interface;
ComponentBean - the bean class;
Component - the remote interface ;
ComponentLocalHome - the local home interface ;
ComponentLocal - the local interface。
如果你为一个实体BEAN (Component)选择了Remote/Local,将生成的文件如下:
ComponentHome - the local home interface ;
ComponentBean - the bean class ;
Component - the local interface ;
ComponentRemoteHome - the remote home interface ;
ComponentRemote - the remote interface。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
- EJB的remote home接口类应继承自`weblogic.wtc.jatmi.TuxedoServiceHome`,这是创建和查找EJB实例的入口。 - EJB的bean类中至少有一个方法暴露为服务,例如上面代码中的`service`方法。这个方法会接收Tuxedo传递的...
- **Local Home Interface**:与Home Interface类似,但仅限于本地调用。 - **Local Interface**:类似于Remote Interface,但仅供本地客户端使用。 - **ejb-jar.xml**:配置文件,包含了EJB组件的部署信息。 - **...
EJB 2.0 为不同类型的Bean定义了特定的接口,例如,实体Bean通常实现Home接口和Remote接口,而会话Bean可以有无接口、Local接口或Remote接口。 **9. 容器管理和组件接口** EJB 2.0 引入了Business Interface(业务...
- Session Bean的Remote接口与Home接口适用于远程访问,Local接口与Local Home接口则适用于同一应用内部访问。 5. EJB 3.0之后的简化: - 从EJB 3.0开始,引入注解替代XML配置,使得EJB更易于使用。 - 注解如`@...
对于会话bean,接口可能是远程接口(Remote Interface)或本地接口(Local Interface);对于实体bean,可能有home接口(Home Interface)和远程接口。 4. **部署描述符**(Deployment Descriptor):这是XML文件,...
15. EJB3.0 中 Session Bean 的组成可以包括 Remote interface、Local home interface、Local interface、ejb-jar.xml、Bean class 等。 16. EJB3.0 中 Entity Bean 的组成可以包括 Primary key class、Local home ...
主要有Home接口(创建和查找bean实例)、Remote接口(业务方法)和Local接口(仅限于同一应用内的通信)。 5. **事务管理**:EJB支持事务属性,如Required、RequiresNew、Mandatory、NotSupported、Supports和Never...
- **Local Interface**(EJB 2.1新增):与Remote Interface类似,但仅适用于同一JVM内的通信,无需远程调用开销。 ### 3. EJB生命周期 EJB的生命周期由容器管理,包括创建、初始化、激活、被动使用、去激活、终止...
- 对于 SessionBean 和 EntityBean,无论是 Remote Home 还是 Local Home 都必须定义 `create` 方法,该方法都会抛出 `CreateException` 异常,Remote Home 中的 `create` 方法还会抛出 `RemoteException` 异常。...
1. **远程接口(Remote Interface)**:客户端用来调用EJB的方法,它是Java RMI(Remote Method Invocation)的一部分。 2. **本地接口(Local Interface)**:仅在同一个JVM内部使用的接口,没有RMI开销。 3. **...
- **Local接口**(EJB 2.1新增):仅在服务器内部使用的接口,无需远程通信,提高了性能。 - **生命周期方法**:包括 ejbCreate(), ejbActivate(), ejbPassivate(), ejbRemove() 等,用于管理Bean的生命周期。 3....
- **Remote Interface**(仅限会话Bean):客户端调用EJB实例的方法的接口。 - **Local Interface**:仅限于同一JVM内调用,没有远程通信开销。 ### 5. EJB的生命周期 EJB组件有其特定的生命周期,包括创建、初始...
- **Remote(Local)接口**:定义了EJB组件对外提供的业务方法,供远程(或局部)客户端调用。 - **Home(LocalHome)接口**:用于查找和创建EJB实例,是访问EJB实例的第一入口。 - **Bean类**:实际的EJB组件实现,...
2. **简化接口**:EJB3.0简化了接口定义,使得开发者不再需要为每个EJB都定义多个接口(如Home接口和Remote接口)。 3. **依赖注入**:EJB3.0支持依赖注入(Dependency Injection),这有助于减少代码耦合度,提高...
- EJBClient是客户端用来访问和交互Session Bean的模块,通过JNDI查找服务定位到远程bean,并通过Home接口实例化bean,然后通过Remote接口调用其方法。 8. **源码和工具** - 标签提到的"源码"可能指的是开发者...
- 远程Home接口(Remote Home Interface):用于创建远程Bean实例,继承自javax.ejb.EJBHome。 - 本地Home接口(Local Home Interface):类似地,用于创建本地Bean实例,继承自javax.ejb.EJBLocalHome。 4. **...
2. **EJB接口**:包括远程接口(Remote Interface)和本地接口(Local Interface)。远程接口用于跨网络的调用,本地接口则用于同服务器内的调用。 - 远程接口继承`javax.ejb.EJBObject`。 - 本地接口继承`javax....
- **Local接口**(EJB2.1引入):与Remote接口类似,但只适用于同一个JVM内的通信,提高了效率。 - **Bean类**:实现了业务逻辑,每个bean都有一个对应的Bean类。 3. **生命周期管理**: - **生命周期回调方法**...
- **Remote接口**:EJB对象实现的接口,复制Bean的公共业务方法,客户端通过此接口与EJB交互。 - **Home对象**:提供EJB对象的生成、查找和删除功能,实现EJB对象的工厂模式。 - **Local接口**:为提高效率,提供了...