下表说明了 EJB 3.1 注释与部署描述符中的 XML 数据之间的转换。
注释 | 属性 | 描述 | 相应的部署描述符元素 |
---|---|---|---|
EJB 注释 (JSR-220) | |||
@Stateless |
|
无状态会话 Bean 的组件定义的注释。将 isIdentical 方法用于比较同一无状态会话 Bean 的两个会话对象的对象引用(即,这两个对象在功能上可互换)时,该方法始终返回 true。 |
|
@Stateful |
|
有状态会话 Bean 的组件定义的注释。 |
|
@Local |
|
在 Bean 类上使用时,用于声明会话 Bean 的本地业务接口。在接口上使用时,用于指定该接口作为本地业务接口。在这种情况下,不提供 value()。 |
|
@LocalHome |
|
声明会话 Bean 的本地 Home 接口或已适应的本地 Home 接口。 |
|
@Remote |
|
声明会话 Bean 的远程业务接口。在接口上使用时,用于指定该接口作为远程业务接口。在这种情况下,不提供 value()。 |
|
@RemoteHome |
|
声明会话 Bean 的远程 Home 接口或已适应的远程 Home 接口。 |
|
@Remove |
|
适用于有状态会话 Bean 类的业务方法。指示有状态会话 Bean 将在方法完成之后由容器移除 |
|
@Init |
(已适应的 Home/LocalHome 接口的相应 create 方法的名称) |
指定对应于已适应的 Home 接口或本地 Home 接口的 create 方法的会话 Bean 的方法。 |
|
@Timeout | 无 | 指定无状态会话 Bean 类或消息驱动的 Bean 类上应该接收该 Bean 的 EJB 计时器到期的方法。 |
|
@MessageDriven |
|
消息驱动的 Bean 的组件定义的注释。 |
|
@TransactionAttribute |
|
应用在 TYPE 级别时,为会话 Bean 或消息驱动的 Bean 的所有业务方法指定缺省事务属性。应用在方法级别时,仅指定该方法的事务属性。 |
|
@TransactionManagement |
|
声明会话 Bean 或消息驱动的 Bean 具有容器管理的事务还是具有 Bean 管理的事务。 |
|
@PostActivate | 无 | 指定一种方法以在激活有状态会话 Bean 之后接收回调。 |
|
@PrePassive | 无 | 指定一种方法以在使有状态会话 Bean 变为被动之前接收回调。 |
|
@EJB |
(保留下列其中一种接口类型的目标 EJB:[本地业务接口、远程业务接口、本地 Home 接口和远程 Home 接口])
|
指示对 Enterprise Java™ Bean 的本地或远程视图的依赖关系。 |
|
@EJBs | 声明多个 TYPE 级别的 @EJB 注释。 | ||
@ApplicationException |
|
应用于某个异常以表示这是应用程序异常并且应该直接报告给客户机(即,解包)。 |
|
@ActivationConfigProperty |
|
表示激活配置属性 |
|
@AroundInvoke | 无 | 指定在 EJB 调用的各个调用部分期间要调用的某个类上的方法 |
|
@ExcludeClassInterceptors | 无 | 用于排除业务方法的类级别拦截器。 |
|
@ExcludeDefaultInterceptors | 无 | 用于排除 Bean 或业务方法的缺省拦截器。 |
|
@Interceptors |
|
声明类或方法的已排序的拦截器列表。 |
|
常用注释 (JSR 250) | |||
@Generated |
|
@Generated 注释用于标记已生成的源代码。该注释也可用于区别单个文件中用户编写的代码和生成的代码。使用时,值元素必须具有代码生成器的名称。建议的约定是在值字段中使用代码生成器的标准名称。例如:com.company.package.classname。 日期元素用于指示源代码的生成日期。 日期元素必须遵循 ISO 8601 标准。例如,日期元素将具有以下值 2011-07-04T12:08:56.235-0700,该值表示美国太平洋时区的本地时间 2011-07-04 12:08:56。注释元素是代码生成器可能要包括在所生成的代码中的任何注释的占位符。 仅限于具有 SOURCE 保留时间的注释。所有其他都是 RUNTIME。 | 无 |
@PostConstruct | 无 | @PostConstruct 注释用于需要在完成依赖关系注入以执行任何初始化之后执行的方法。 |
|
@PreDestroy | 无 | @PreDestroy 注释作为回调通知用于方法,以通知实例位于容器正在移除的进程中。 |
|
@Resource |
要对此资源使用的认证类型。
资源的 JNDI 名称。
指示是否可以在此组件与其他组件之间共享此资源。
资源的 Java 类型。 |
@Resource 注释标记应用程序所需要的资源。此注释可能应用于应用程序组件类或者组件类的字段或方法。将该注释应用于字段或方法时,容器会在初始化组件时将所请求的资源的实例注入到应用程序组件中。 如果将该注释应用于组件类,那么该注释会声明应用程序在运行时查找的资源。 |
|
@Resources | |||
@DeclareRoles |
|
由应用程序用于声明角色。 |
|
@DenyAll | 无 | 指定不允许任何安全角色调用指定的方法 - 即,将这些方法从 J2EE 容器的执行中排除。 |
|
@PermitAll | 无 | 指定允许所有安全角色调用指定的方法 - 即,已声明了指定的方法。可以在类或方法上指定该注释。在类上指定该注释表示它适用于该类的所有方法。 如果在方法级别处指定,那么它只影响该方法。如果在类级别指定 RolesAllowed 并在方法级别处应用此注释,那么 PermitAll 注释会覆盖指定方法的 RolesAllowed。 |
|
@RolesAllowed |
|
指定允许访问应用程序中的方法的角色列表。RolesAllowed 注释的值是一列安全角色名称。可以在类或方法上指定此注释。 |
|
@RunAs |
|
定义 J2EE 容器中的执行期间应用程序的身份。这允许开发人员在特定的角色下执行。该角色必须映射到容器安全性域中的用户/组信息。它的值是安全角色的名称。 |
|