2010-11-28 4 views
12

약간의 설명이 필요합니다. JSF와 해당 세션빈을 사용하는 방법을 알고 있지만 EJB와 혼동스러워진다. EJB로 도입 된 빈과 JSF에서 사용되는 세션 빈의 차이점은 무엇입니까 (ejb에서는 스테이트리스/전체 세션 빈과 엔티티 빈, 엔티티 관리자 등을 알고 있습니다). 내가 얻지 못하는 것은 EJB를 사용할 때와 jsf 빈을 사용할 때입니다. 엔티티 bean을 제외하고, ejb stateful/less 세션 bean은 둘 다 jsf 세션 bean과 유사합니다. 나는 injection ejb에 대해 jsf를 읽었지만 jsf beans와 함께 ejb를 사용하지 않는 이유는 무엇입니까? 나는 당신이 나의 혼란을 이해할 수 있기를 바랍니다. 고맙습니다.jsf beans와 ejb beans의 차이점

답변

6

Java EE의 여러 유형의 관리 빈들 사이에는 혼란이 있습니다. 혼란에 빠지기 위해 Java EE 6는 세 번째 종류의 관리 빈 (CDI 빈)을 도입했습니다. 나는 차이를 설명하려고이 답변에

조금 유사점 : How do CDI and EJB compare? interact?

짧게는 JSF 콩은 주로 비즈니스 로직 작업 할 때 자주해야 할 일이다, 거래에 대한 지원을 제공하지 않습니다, 관리했다 및 특히 JPA.

또한 세션 범위가 지정된 관리 Bean의 경우 session은 상태 비 저장 및 statefull 세션 bean의 용어가 참조하는 세션과 완전히 다른 종류의 세션이라는 점에 유의하십시오.

7

Alexis

먼저 JSF bean과 EJB bean의 차이점을 알아야합니다.

JSF 콩 : JSF 콩 JSF의 구성 요소 값을 읽는 데 사용 POJO 클래스입니다. jsf에 두 가지 유형의 bean이 있습니다

관리되는 bean은 Java bean이 작성되고 초기화되는 방법입니다. 아시다시피, jsf는 게으른 초기화 모델을 사용합니다. 이는 특정 범위의 bean이 범위가 시작될 때가 아니라 요청시, 즉 bean이 처음 필요할 때 생성되고 초기화된다는 것을 의미합니다.

backing bean은 특정 관리 Bean이 수행하는 역할에 관한 것입니다. 이것은 페이지에있는 구성 요소의 서버 측 표현이되는 역할입니다. 일반적으로 백킹 빈은 요청 범위가 있지만 제한이 아닙니다.

EJB Bean 은 응용 프로그램의 비즈니스 로직을 캡슐화하는 서버 측 구성 요소입니다. 비즈니스 논리는 응용 프로그램의 목적을 수행하는 코드입니다.

주로있다

1.Statefull 세션 빈

2.Stateless 세션 빈

3.Singleton 세션 빈 (EJB 3.1)

-1

beans- 세션의 세 가지 종류가 있습니다 CDI와 EJB의 차이점이 설명되어있는 사이트에 대한 또 다른 답. 마침내 전체 그림을 파악할 때 큰 도움이됩니다. Where to use EJB 3.1 and CDI?

관련 문제