注释的作用域和位置

您可以在类级别、方法级别和字段级别向源代码添加注释。

使用注释

EJB 3.1 和 Java™ Persistence API 会利用元数据注释,这是 J2SE 5.0 中引入的一项功能。注释由前置注释类型的 @ 符号组成,有时后跟位于括号内的“元素/值”对列表。EJB 3.1 规范定义了各种注释类型,例如:
  • 组件定义的注释,例如 @Stateless(用于指定 Bean 类型)
  • @Remote@Local 指定某个 Bean 是以远程方式还是以本地方式访问
  • @TransactionAttribute 指定事务属性
  • @MethodPermissions@Unchecked@SecurityRoles 指定安全性和方法许可权
Java Persistence API 会添加特定于创建实体的注释,例如:
  • @Entity 是一个组件定义的注释,用于指定某个类是一个实体
  • @Table 指定要在类中使用的数据源
注: JPA 映射注释(例如 @Id@Column)可应用于字段和方法;但对于任何一个实体类,只能将它们应用于其中一个:即,必须将所有注释都应用于字段,或者必须将它们都应用于方法。字段只能具有专用、受保护或软件包可视性,且不允许实体的客户机直接访问字段,所以您需要定义公共 getter 方法和 setter 方法。

注释的作用域和位置

注释在类级别、接口级别、方法级别或字段级别进行运作。例如,组件定义的注释(例如 @Stateless@Entity)是类级别注释,并且它们在类声明前面的注释部分中插入:
package com.ibm.websphere.ejb3sample.counter;

import javax.ejb.Stateless;
import javax.interceptor.Interceptors;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

@Stateless
@Interceptors ( Audit.class )

public class StatelessCounterBean implements LocalCounter, RemoteCounter {
这些注释的顺序不重要;通常,组件定义的注释放在其他注释前面,但此位置不是必需的。方法级别和字段级别注释出现在类或方法内:
public class JPACounterEntity {

    @Id 
    private String primarykey = "PRIMARYKEY";

    private int value = 0;
指示主题类型的图标 概念主题
信息中心的条款和条件 | 反馈

时间戳记图标 最近一次更新时间: 2014 年 4 月 17 日

文件名:cusingannotations.html