Java™ EE 플랫폼에 대한 CDI(Context and Dependency Injection)는
JSR 299 스펙에 기반한 구현입니다. Java EE
프로젝트에 CDI를 구현하는 애플리케이션을 작성할 수 있습니다.
CDI 애플리케이션은 웹 아카이브(WAR)의 WEB-INF 디렉토리 또는
JSR 299 스펙에 정의된 다른 아카이브 유형의 META-INF 디렉토리에 존재하는
beans.xml
파일의 존재에 의해 활성화됩니다. 애플리케이션이 활성화되면
컨테이너가 다음과 같은 서비스를 제공합니다.
- 컨텍스트 관리
- 유형에 무관한 종속성 인젝션: CDI 관리 Bean이 필요한 대로 인스턴스화되어 삽입됩니다.
- 데코레이터: 하나 이상의 Bean 인터페이스를 구현하며 비즈니스 로직을 포함할 수 있습니다.
기본적으로 데코레이터는 사용되지 않습니다. Bean당 여러 개의 데코레이터를 가질 수 있고
순서는 Bean이 정의합니다.
- 인터셉터 바인딩. beans.xml 파일에서 수동으로 사용 가능하게 설정하는 인터셉터는
인터셉터 바인딩 유형을 사용하여 바인드됩니다.
- 이벤트 모델
- EL(Expression Language)을 사용하는 JSF(JavaServer Faces) 및 JSP(JavaServer Pages)로 통합
CDI 어노테이션에 대한 자세한 정보는
패키지 javax.inject 및
패키지 javax.enterprise.context를 참조하십시오.
WebSphere® Application Server에서 CDI를 사용하는 데 대한 자세한 정보는
CDI(Contexts and Dependency Injection)를 참조하십시오.