ManagedBean czy beany CDI?

0

Witam. Pisałem swoją pierwszą aplikację internetową w Javie EE i jak to na początku bywa nie znałem wszystkich możliwości jakie daje ta technologia. Pisałem standardową aplikację czyli EJB, JPA i JSF. W swojej aplikacji używałem cały czas JSFowych managedbenaów, ale niedawno dowiedziałem się o istnieniu czegoś takiego jak beany CDI. Z tego co się orientuję to różnie je od jsfowych beanów to, że można do nich wstrzykiwać zależności od różnych klas, a nie tak jak w przypadku jsfowych beanów za pomocą @ManagedProperty możemy wstrzykiwać tylko inny jsfowy bean. Oraz poza tym definiują coś takiego jak model zdarzeń, przecięcia, dekoratory i stereotyp. Czego w JSFowych beanach nie ma. Moje pytani jest następujące, jeśli piszemy aplikację w Javie EE to powinniśmy używać raczej beanów CDI zamiast JSFowych? Pytanie kieruję do osób, które zajmują się pisaniem takich aplikacji na co dzień.

2

Zasadniczo CDI to jest pewne "ulepszenie" i próba nadgonienia przez JEE Springa. CDI daje ci większe możliwości i technicznie rzecz biorąc możesz stosować tylko CDI i będzie ok.
Możesz też korzystać z ManagedBeanów tylko do korzystania z JSFa, tzn tylko do obsługi frontendu (beany do przyjmowania / generowania danych), a CDI do wiązania elementów logiki biznesowej.

1 użytkowników online, w tym zalogowanych: 0, gości: 1