2013-06-07 18 views
7

Czytam starego posta w Stackoverflow zawartość:Jaka jest różnica między JavaBeans i ManagedBean

In the big architectural picture, your own JSF code is the V: 

M - Business domain/Service layer (e.g. EJB/JPA/DAO) 
V - Your JSF code 
C - FacesServlet 

In the smaller developer picture, the architectural V is in turn dividable as follows: 

M - Entity 
V - JSP/XHTML page 
C - Managed bean 

So it's basically a M(MVC)C. 

Na górnej przypadku JavaBeans to model,

Ale w dolnej części obudowy, Managed bean staje się kontrolerem?

To nie to samo> ?? Jaka jest różnica?

Odpowiedz

9

Krótka odpowiedź: 'Managed Bean' jest starszą krótką nazwą dla fasoli zarządzanej przez JSF. To Java Bean zarządzana przez JSF.

długi:

A fasola zwykle POJO (tradycyjne JavaObject) zarządza pojemnika.

Zarządzane oznacza tutaj, że tworzenie/niszczenie, liczba wystąpień, ich zakres i wywoływanie określonej metody są obsługiwane przez kontener.

Kontenery są zazwyczaj dostarczane przez serwer bazowy. W Java EE masz inny kontener (CDI, EJB, Web, itd.).

JSF Managed Bean to fasolki zarządzane przez kontener JSF, EJB są zarządzane przez kontener EJB, serwlet/filtry przez kontener serwletów, jednostki JPA przez EntityManager, itp.

Na przykład na serwerze Tomcat masz tylko kontener WWW (serwlet), a nie EJB. Jeśli używasz JSF (musisz podać powiązaną zależność), będziesz miał również zarządzane komponenty bean.

+0

EFB i Managed Bean wszystkie są fasolką Java, prawda? –

+1

tak, każdy obiekt java zarządzany przez kontener to komponent bean Java – Gab

+0

Uczę się aplikacji JSP, "I nie wiem, gdzie umieścić logikę biznesową. Gdzie jest część comtroller? –