어쩌면 이것은 어리석은 질문처럼 보일지 모르지만 나는 정말로 혼란 스럽습니다. Seam 3와 Weld CDI는 같은 것입니까? 나는 "CDI (Weld)/Seam 3"을 가리키는 게시물을 읽고 있는데, 같은 것으로 간주해야합니까?Seam3과 Weld CDI는 같은 것입니까?
3
A
답변
7
Seam 3은 CDI (JSR-299)를 많이 사용합니다. 용접은 CDI의 reference implementation입니다. 반면 Seam은 많은 기능을 갖춘 웹 응용 프로그램 개발을위한 전체 프레임 워크입니다 (링크의 모듈 목록 참조).
일반적으로 CDI 구현은 Java EE 응용 프로그램 서버 (예 : JBoss/Wildfly, Weld와 함께 제공됨)에서 제공됩니다. 그러나 CDI의 모든 구현은 Seam과 함께 사용하기에 적합해야합니다. 이 이미지를 참조하십시오
그래서 질문에 대한 대답은 이지만, 용접 (또는 CDI 구현)을 광범위하게 심에 의해 사용된다. 이것은 아마도 "CDI (용접)/솔기"을 참조하는 게시물을 종종 보는 이유입니다.Seam 3의 구현이 중단 된 것은 Java EE가 수년 동안 어떻게 향상 되었기 때문일 수 있습니다.
이 심 프로젝트 페이지의 정보에 대한 Weld는 다음과 같습니다 자바 EE 플랫폼 (CDI) 자바 컨텍스트 및 의존성 주입 :
용접은 참조 구현 JSR-299 (RI)입니다.
- CDI는
- 용접은 자바 EE에 포함 된 JCP 스펙입니다 CDI이 정보가 의존성 주입하고 페이지에 또한
컨텍스트 수명주기 관리를위한 자바 표준 CDI 참조 구현
Seam 3은 CDI를 확장하여 Java EE 6이 제공하는 기능 이외의 기능을 제공하는 모듈 집합입니다.
그리고 마지막으로, 이것은 분명히 당신에게 확인해야합니다 :
그러나, 심 (3)는 JSR-299의 상위 집합입니다. JSR-299를 Seam 3의 핵심으로 생각하십시오. 이는 애플리케이션 구성 요소와 Seam 프레임 워크를 구성하는 기본 제공 구성 요소의 기본 프로그래밍 모델입니다. Weld는이 프로그래밍 모델을 구현 한 것입니다.