다음은 주제에 대한 좋은 토론입니다. Gavin King은 비 원격 EJB의 경우 @EJB보다 @Inject를 권장합니다.
http://www.seamframework.org/107780.lace
또는
https://web.archive.org/web/20140812065624/http://www.seamframework.org/107780.lace
다시 : @EJB 또는 @Inject로 주입?
- 2009 년 11 월 20:48 아메리카 / 뉴욕 | 링크 개빈 킹
EJB 로컬 참조는 항상 직렬화 가능해야하므로이 오류는 매우 이상합니다. 글래스 피쉬 버그일까요?
기본적으로 @Inject는 다음과 같은 이유로 항상 좋습니다.
it is more typesafe,
it supports @Alternatives, and
it is aware of the scope of the injected object.
원격 EJB에 대한 참조를 선언하는 경우를 제외하고 @EJB를 사용하지 않는 것이 좋습니다.
과
다시 : @EJB 또는 @Inject로 주입?
2009 년 11 월 17 일 17:42 아메리카 / 뉴욕 | 링크 개빈 킹
원격 EJB를 사용하면 @EJB가 더 우수합니까?
원격 EJB의 경우 클라이언트가 단순히 해당 메타 데이터에 액세스 할 수 없으므로 Bean 클래스에서 규정 자, @Alternative 등의 메타 데이터를 선언 할 수 없습니다. 또한 로컬 사례 (글로벌 JNDI 이름)에 필요하지 않은 일부 추가 메타 데이터를 지정해야합니다. 따라서 모든 것들이 다른 곳으로 가야합니다 : 즉 @Produces 선언.
@EJB
원형 주입 (하나의 싱글 톤 콩과 다른 콩이 서로 참조가 필요한)을 위해 작동합니까? (아래 내 답변을 참조하여-전환하여 올바른 일을하고 있는지 확실하지 않습니다@EJB
)