EJB 3.1 어노테이션 및 배치 디스크립터에서의 상응 요소

다음 표에서는 EJB 3.1 어노테이션과 배치 디스크립터의 XML 데이터 사이의 변환을 설명합니다.

표 1. 어노테이션 및 배치 디스크립터에서의 상응 요소
어노테이션 속성 설명 상응하는 배치 디스크립터 요소
EJB어노테이션(JSR-220)      
@Stateless
java.lang.String     description

 java.lang.String     mappedName

 java.lang.String     name 
Stateless 세션 Bean에 대한 컴포넌트 정의 어노테이션. isIdentical 메소드를 동일한 Stateless 세션 Bean의 두 개의 세션 오브젝트에 대한 오브젝트 참조 비교 시(즉, 기능적으로 교환 가능한 경우) 사용하면 항상 true를 리턴합니다.
<session>--<ejb-name>
<session>--<mapped-name>
<session>--<ejb-class>
<session>--<session-type>

if annotated type implements some interface:

<session>--<local>

<session>--<local-home>
@Stateful
java.lang.String     description

 java.lang.String     mappedName

 java.lang.String     name 
Stateful 세션 Bean에 대한 컴포넌트 정의 어노테이션.
<session>--<ejb-name>
<session>--<mapped-name>
<session>--<ejb-class>
<session>--<session-type>
@Local
java.lang.Class[]     value
Bean 클래스에 사용되면, Bean에 대한 로컬 비즈니스 인터페이스를 선언합니다. 인터페이스에 사용되면, 인터페이스를 로컬 비즈니스 인터페이스로 지정합니다. 이 경우, value()가 제공되지 않습니다.
<session>--<local>
@LocalHome
java.lang.Class     value
세션 Bean에 대한 채택된 로컬 홈 인터페이스 또는 로컬 홈을 선언합니다.
<session>--<local home>
@Remote
java.lang.Class[]     value
세션 Bean에 대한 원격 비즈니스 인터페이스를 선언합니다. 인터페이스에 사용되면, 인터페이스를 원격 비즈니스 인터페이스로 지정합니다. 이 경우, value()가 제공되지 않습니다.
<session>--<remote>
@RemoteHome
java.lang.Class     value
세션 Bean에 대한 채택된 원격 홈 인터페이스 또는 원격 홈을 선언합니다.
<session>--<remote home>
@Remove
boolean     retainIfException
Stateful 세션 Bean 클래스의 비즈니스 메소드에 적용됩니다. 메소드 완료 후 컨테이너에 의해 Stateful 세션 Bean이 제거된다는 것을 표시합니다.
<remove-method>--<bean-method>

<remove-method>--<retain-if-exception>
@Init
java.lang.String     value  
(채택된 홈/로컬 홈 인터페이스의 상응하는 작성 메소드 이름)
채택된 홈 인터페이스 또는 채택된 로컬 홈 인터페이스의 작성 메소드에 상응하는 세션 Bean의 메소드를 지정합니다.
<init-method>--<create-method>

<init-method>--<bean-method> 
@Timeout 없음 해당 Bean의 EJB 타이머 만기를 수신할 Stateless 세션 Bean 클래스 또는 메시지 구동 Bean 클래스의 메소드를 지정합니다.
<timeout-method>
@MessageDriven
ActivationConfigProperty[]     activationConfig

java.lang.String     description

java.lang.String     mappedName

java.lang.Class     messageListenerInterface

java.lang.String     name 
메시지 구동 Bean의 컴포넌트 정의 어노테이션
<message-driven>--<ejb-name>
<message-driven>--<mapped-name>
<message-driven>--<ejb-class>
<message-driven>--<messaging-type> <message-driven>--<activation-config-property>
@TransactionAttribute
TransactionAttributeType     value
유형 레벨에 적용되면 되면 세션 또는 메시지 구동 Bean의 모든 비즈니스 메소드에 대한 기본 트랜잭션 속성을 지정합니다. 메소드 레벨에 적용되면 해당 메소드에 대한 트랜잭션 속성만 지정합니다.
<container-transaction>
@TransactionManagement
TransactionManagementType  value
세션 Bean 또는 메시지 구동 Bean의 트랜잭션이 컨테이너 관리 트랜잭션인지 Bean 관리 트랜잭션인지를 선언합니다.
<transaction-type>
@PostActivate 없음 Stateful 세션 Bean이 활성화된 후에 콜백을 수신할 메소드를 지정합니다.
<post-activate>
@PrePassive 없음 Stateful 세션 Bean이 비활성화되기 전에 콜백을 수신할 메소드를 지정합니다.
<pre-activate>
@EJB
java.lang.Class     beanInterface
(대상 EJB의 다음 인터페이스 유형 중 하나를 유지합니다. [로컬 비즈니스 인터페이스, 원격 비즈니스 인터페이스, 로컬 홈 인터페이스, 원격 홈 인터페이스])
 java.lang.String     beanName

 java.lang.String     mappedName

 java.lang.String     name  
엔터프라이즈 Java™ Bean의 로컬 또는 원격 보기에 대한 종속성을 표시합니다.
<ejb-ref>--<ejb-ref-name>
<ejb-ref>--<home>     
<ejb-ref>--<remote>

<ejb-local-ref>--<ejb-ref-name>
<ejb-local-ref>--<local-home>     
<ejb-local-ref>--<local>
@EJBs   복수 유형 레벨 @EJB 어노테이션을 선언합니다.  
@ApplicationException
EJB[]     value
예외에 적용되어 이 예외가 애플리케이션 예외이며 클라이언트에 직접 보고되어야 함을 표시합니다(즉, 랩핑되지 않음).
<application-exception>--<exception-class>

<application-exception>--<rollback>
@ActivationConfigProperty
java.lang.String     propertyName

 java.lang.String     propertyValue boolean     rollback
활성 구성 특성을 표시합니다.
<activation-config-property>

           --<activation-config-property-name>

<activation-config-property>

           --<activation-config-property-value>
@AroundInvoke 없음 EJB 호출의 around invoke 부분 동안 호출될 클래스의 메소드를 지정합니다.
<around-invoke>--<class>
<around-invoke>--<method-name>
@ExcludeClassInterceptors 없음 비즈니스 메소드의 클래스 레벨 인터셉터를 제외하는 데 사용됩니다.
<exclude-class-interceptors>
@ExcludeDefaultInterceptors 없음 Bean 또는 비즈니스 메소드의 기본 인터셉터를 제외하는 데 사용됩니다.
<exclude-default-interceptors>
@Interceptors
java.lang.Class[]     value
클래스 또는 메소드의 인터셉터 정렬 목록을 선언합니다.
<interceptors>--<interceptor>
공통 어노테이션(JSR 250)      
@Generated
java.lang.String[]     value   

 java.lang.String  comments

 java.lang.String     date 
@Generated 어노테이션은 생성된 코드를 표시하는 데 사용됩니다. 또한, 단일 파일에서 생성된 코드와 사용자가 작성한 코드를 구별하는 데 사용되기도 합니다. 이 어노테이션이 사용되면 값 요소는 코드 생성기의 이름을 가져야 합니다. 권장되는 명명법은 값 필드에 코드 생성기의 완전한 이름을 사용하는 것입니다. 예를 들면, com.company.package.classname과 같습니다. 날짜 요소는 소스 코드가 생성된 날짜를 표시하는 데 사용됩니다. 날짜 요소는 ISO 8601 표준을 따라야 합니다. 예를 들어, 날짜 요소는 2011-07-04T12:08:56.235-0700 값을 가질 수 있는데, 이는 미국 태평양 시간대의 2011-07-04 12:08:56 로컬 시간을 의미합니다. 주석 요소는 코드 생성기가 생성된 코드에 포함할 주석에 대한 플레이스홀더입니다. SOURCE 유지를 가진 유일한 어노테이션입니다. 다른 모든 것은 런타임입니다. 없음
@PostConstruct 없음 @PostConstruct 어노테이션은 초기화를 수행하기 위해 종속성 인젝션이 완료된 후에 실행되어야 하는 메소드에 사용됩니다.
<post-construct>--<lifecycle-callback-class>
<post-construct>--<lifecycle-callback-method>
@PreDestroy 없음 @PreDestroy 어노테이션은 인스턴스가 컨테이너에 의해 제거 중인 프로세스에 있다는 신호를 보내는 콜백 알림으로서 메소드에 사용됩니다.
<pre-destroy>--<lifecycle-callback-class>
<pre-destroy>--<lifecycle-callback-method>
@Resource
Resource.AuthenticationType     authenticationType
   
이 자원에 사용될 인증 유형입니다.
java.lang.String  description

 java.lang.String mappedName

 java.lang.String     name
자원의 JNDI 이름입니다.
boolean     shareable
이 컴포넌트와 기타 컴포넌트 사이에 이 자원의 공유 여부를 표시합니다.
Class     type
자원의 Java 유형입니다.
@Resource 어노테이션은 애플리케이션에서 필요한 자원을 표시합니다. 이 어노테이션은 애플리케이션 컴포넌트 클래스에 적용되거나, 컴포넌트 클래스의 필드 또는 메소드에 적용될 수 있습니다. 어노테이션이 필드 또는 메소드에 적용되면, 컴포넌트가 초기화될 때 컨테이너는 요청된 자원의 인스턴스를 애플리케이션 컴포넌트에 주입합니다. 어노테이션이 컴포넌트 클래스에 적용되면 어노테이션은 애플리케이션이 런타임 시 검색할 자원을 선언합니다.
env-entry
        <env-entry-name>
        <env-entry-value>  
        <env-entry-type>

service-ref
resource-ref
message-destination-ref
resource-env-ref
@Resources      
@DeclareRoles
String[] value
애플리케이션에서 역할을 선언하기 위해 사용됩니다.
<security-role>--<role-name>
@DenyAll 없음 지정된 메소드를 호출하도록 허용된 보안 역할이 없다는 것을 지정합니다. 즉, 해당 메소드는 J2EE 컨테이너에서의 실행에서 제외됩니다.
<exclude-list>--<method>
@PermitAll 없음 모든 보안 역할이 지정된 메소드를 호출할 수 있도록 지정합니다. 즉, 지정된 메소드가 지워집니다. 클래스 또는 메소드에 지정될 수 있습니다. 클래스에 지정하면 해당 클래스의 모든 메소드에 적용됩니다. 메소드 레벨에 지정되면 해당 메소드에만 영향받습니다. RolesAllowed가 클래스 레벨에 지정되고 이 어노테이션이 메소드 레벨에 지정된 경우, 지정된 메소드에 대해 PermitAll 어노테이션이 RolesAllowed를 겹쳐씁니다.
<method-permission>--<method>
@RolesAllowed
String[] value
애플리케이션의 메소드에 액세스하도록 허용된 역할의 목록을 지정합니다. RolesAllowed 어노테이션의 값은 보안 역할 이름의 목록입니다. 이 어노테이션은 클래스 또는 메소드에 지정할 수 있습니다.
<method-permission>--<role-name>
<method-permission>--<method>
@RunAs
String value
J2EE 컨테이너에서 실행되는 동안 애플리케이션의 ID를 정의합니다. 이를 통해 개발자는 특정 역할 하에서 실행할 수 있습니다. 역할은 컨테이너 보안 범주의 사용자/그룹 정보에 맵핑되어야 합니다. 이의 값은 보안 역할의 이름입니다.
<security-identity>--<run-as>
주제 유형을 표시하는 아이콘 참조 주제
Information Center의 이용 약관 | 피드백

시간소인 아이콘 마지막 업데이트 날짜: 2014-05-22

파일 이름: rjeeddvsannotations.html