2013-04-12 2 views
2

이 텍스트는 코어 자바 서버라는 책에서 것은 얼굴 :스프링 프레임 워크에는 고유 한 콩이 있습니까?

그것은이 두 개의 메커니즘, CDI 콩이와 JSF는 JSF에서 사용할 수있는 콩을 위해, 콩을 관리하는 역사적 우연이 페이지 . 응용 프로그램이 Tomcat과 같은 일반 서블릿 러너에서 작동해야하는 경우가 아니면 CDI beans를 사용하는 것이 좋습니다. 책의 소스 코드에는 CDI Bean (Java EE 6 응용 프로그램 서버용)과 JSF 관리 Bean (CDI를 지원하지 않는 서블릿 주자 용)의 두 가지 버전이 있습니다. 나는 스프링 프레임 워크, 그리고 톰캣 서버를 사용하는 경우,

나는 위에서 언급 한 콩 중 하나를 사용해야합니다, 또는 스프링 프레임 워크는 자신의 빈 구현과 오는가 :

내 질문은?

필자가 아는 한, Spring Framework는 Dependency Injection을 지원합니다. Tomcat에서 응용 프로그램을 실행하면 지원됩니까? 이 책에서 언급 한 CDI beans 나 JSF Managed 수단을 사용하지 않을 것인가?

감사합니다.

답변

2

컨테이너에 대해 이야기하는 것이 bean 구현보다 정확합니다. 예 스프링은 자체 컨테이너와 함께 제공됩니다. 사실 스프링 프레임 워크는 완전한 Java EE 스택의 대안으로 볼 수 있습니다.

봄 DI 및 CDI를 함께 사용하면 관심이 없지만이 경우 봄 대신 Java EE 6 웹 프로필 서버로 전환하라는 메시지가 표시되는 경우에도 봄에는 톰캣에서 JSF를 사용할 수 있습니다.

스프링은 스프링 mvc라는 자체 뷰 프레임 워크 구현과 함께 제공됩니다.

이 모든 것은 서블릿 컨테이너 (jetty tomcat 등)에서 완벽하게 실행될 수 있습니다. 단, 관련된 모든 종속성을 제공해야합니다.

+0

그래서 관리 빈은 컨테이너입니까? –

+2

관리되는 빈은 메타 데이터'@ SomeAnnontation'으로 주석 처리 된 단순한 pojo (일반 오래된 자바 객체)가 아닙니다. 컨테이너는 해당 빈을 관리하는 객체 (프레임 워크/기능 세트 - 원하는대로 호출)입니다. 주석을 감지하고 적절한 동작으로 처리합니다 (@transactional은 컨테이너를 여는 트랜잭션이 발생하고 주석이 달린 메소드를 실행하며 메소드 실행 후 트랜잭션을 적절하게 커밋/롤백 함). Dependecy Injection이라 불리는 것은 컨테이너가 모든 빈 수명주기를 생성하고 관리하며 주석 (@inject)을 사용하여 서로 내부에 주입하는 사실입니다. – Gab

관련 문제