2013-05-07 2 views
3

어쩌면 이것은 어리석은 질문처럼 보일지 모르지만 나는 정말로 혼란 스럽습니다. Seam 3와 Weld CDI는 같은 것입니까? 나는 "CDI (Weld)/Seam 3"을 가리키는 게시물을 읽고 있는데, 같은 것으로 간주해야합니까?Seam3과 Weld CDI는 같은 것입니까?

답변

7

Seam 3은 CDI (JSR-299)를 많이 사용합니다. 용접은 CDI의 reference implementation입니다. 반면 Seam은 많은 기능을 갖춘 웹 응용 프로그램 개발을위한 전체 프레임 워크입니다 (링크의 모듈 목록 참조).

일반적으로 CDI 구현은 Java EE 응용 프로그램 서버 (예 : JBoss/Wildfly, Weld와 함께 제공됨)에서 제공됩니다. 그러나 CDI의 모든 구현은 Seam과 함께 사용하기에 적합해야합니다. 이 이미지를 참조하십시오

enter image description here

그래서 질문에 대한 대답은 이지만, 용접 (또는 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는이 프로그래밍 모델을 구현 한 것입니다.

    관련 문제