http://www.devcastzone.com/course,tworzenie-aplikacji-z-uzyciem-biblioteki-hibernate
Devcast Tworzenie aplikacji z użyciem EJB3 opisuje zagadnienia związane z tworzeniem aplikacji z wykorzystaniem EJB3. W kolejnych modułach przedstawiane analizowane są różne aspekty platformy Java Enterprise Edition, sposoby tworzenia komponentów, współpraca z bazą danych (JPA), wykorzystanie usług dostarczonych przez serwer aplikacji (JMS, transakcje) - na wdrożeniu skończywszy (struktura archiwum EAR). Omówione są zarówno teoretyczne aspekty aplikacji wykorzystujących Enterprise Java Beans, jak i praktyczna strona procesu wytwarzania systemu.
1. Tworzenie aplikacji
z użyciem EJB 3
Materiały pochodzą ze strony:
www.devcastzone.com
copyright BNS MEDIA
www.devcastzone.com
2. Tworzenie aplikacji
z użyciem EJB 3
Moduł 2
Komponenty sesyjne
copyright BNS MEDIA
www.devcastzone.com
3. Treśd modułu
1. Czym jest komponent EJB
2. Komponenty bezstanowe
3. Cykl życia komponentu
Źródło: sxc.hu/photo/204689
4. Wykorzystanie
komponentów
5. Konwencje EJB
6. JNDI
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 3
4. Treśd modułu
7. Wstrzykiwanie zależności
8. Konfiguracja EJB poprzez
adnotacje
Źródło: sxc.hu/photo/204689
9. Konfiguracja EJB poprzez
XML (deskryptory
wdrożenia)
10. Komponenty stanowe
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 4
5. Komponent EJB
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 5
6. Komponent bezstanowy
• Nie posiada stanu wewnętrznego – nie przechowuje
informacji pomiędzy wywołaniami
• Służy do implementowania logiki działania aplikacji
• Świadczy usługi dla innych komponentów
wewnętrznych
• Może byd fasadą dla klientów zewnętrznych (także
usług webowych – web services)
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 6
7. Cykl życia komponentu
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 7
8. Wstrzykiwanie zależności
• Wzorzec odwrócenia sterowania (Inversion of
Control, IoC, Dependecy Injection)
• Tworzenie luźnych powiązao pomiędzy obiektami
• Przeniesienie odpowiedzialności za kontrolę
zależności na zewnątrz obiektu
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 8
9. Wstrzykiwanie zależności (2)
• Zależności w ujęciu tradycyjnym
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 9
10. Wstrzykiwanie zależności (3)
• Zależności wstrzykiwane
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 10
11. Wstrzykiwanie zależności (3)
• Spotyka się także wstrzeliwanie zależności
• Do zdefiniowania sesyjnego komponentu
bezstanowego służy adnotacja @Stateless
• Za pomocą adnotacji @EJB można bezpośrednio
wstrzyknąd referencję do komponentu do pola
• Adnotowad można pole (field injection) lub metodę
(setter injection)
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 11
12. Adnotacja @Stateless
• name
o Identyfikuje komponent w kontenerze; domyślnie jest to
nazwa klasy implementującej komponent
• mappedName
o Może określad nazwę komponentu w globalnym rejestrze
JNDI (ale nie musi – jest zależny od serwera)
• description
o Pełni funkcję dokumentacyjną
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 12
13. Adnotacja @EJB – dla atrybuty, metody
• beanName
o nazwa istniejącego komponentu który ma zostad pobrany
• mappedName
o podobnie jak w przypadku @Stateless, interpretacja
parametru zależna jest od dostawcy serwera
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 13
14. Adnotacja @EJB – dla atrybutu, metody
@Stateless
public class HelloWorldService implements HelloWorld {
@EJB(name = "specificBeanName")
SecondServiceLocal secondService;
//..
}
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 14
15. Adnotacja @EJB – dla klasy
• name
o nazwa, pod którą zostanie umieszczona referencja
pobieranego komponentu w kontekście JNDI
• beanInterface
o interfejs (zdalny bądź lokalny) który zostanie wykorzystany
jako referencja
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 15
16. Adnotacja @EJB – dla klasy
package pl.bnsit.ejb3;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.naming.InitialContext;
@Stateless
@EJB(name = "someStrangeName", beanInterface = SecondService.class)
public class HelloWorldService implements HelloWorld {
public String helloWorld() throws Exception {
InitialContext ctx = new InitialContext();
SecondService secondService =
(SecondService) ctx.lookup("java:comp/env/someStrangeName");
return secondService.returnValue();
}
}
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 16
17. Adnotacja @Resource
• Analogiczna zasada działania jak przy adnotacji @EJB
• Dodatkowe atrybuty
o type
• obiekt Class reprezentujący typ zasobu, np. DataSource
o authenticationType
• definiuje, czy za uwierzytelnianie podczas dostępu do zasobu
odpowiedzialny jest kontener, czy komponent
o shareable
• wskazuje, czy dany zasób może byd współdzielony przez więcej
komponentów
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 17
18. Komponent stanowy
• Przywiązywany jest do konkretnego klienta
• Utworzona instancja powiązana jest z klientem przez
cały cykl życia
• Komponenty utrzymują stan – przechowują dane
pomiędzy kolejnymi wywołaniami
• Komponenty nie są zarządzane w puli
• Zamiast puli, w celu zwiększenia wydajności,
podlegają pasywacji
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 18
19. Cykl życia komponentu
Tworzenie aplikacji z użyciem EJB 3
copyright BNS MEDIA
www.devcastzone.com 19
20. Tworzenie aplikacji z użyciem EJB 3 – program
pełnego szkolenia
1. Wprowadzenie, kontener EJB
o Platforma Java Enterprise Edition
o Kontener EJB
o Nowości w EJB 3.0
o Konfiguracja środowiska
o Utworzenie przykładowej aplikacji
2. Komponenty sesyjne
o Czym jest komponent EJB
o Komponenty bezstanowe
o Cykl życia komponentu
o Wykorzystanie komponentów
o Konwencje EJB
o JNDI
o Wstrzykiwanie zależności
o Konfiguracja EJB poprzez adnotacje
o Konfiguracja EJB poprzez XML (deskryptory wdrożenia)
o Komponenty stanowe
Tworzenie aplikacji z użyciem biblioteki Hibernate
copyright BNS MEDIA
www.devcastzone.com 20
21. Tworzenie aplikacji z użyciem EJB 3 – program
pełnego szkolenia
3. Java Persistence API
o Podstawy JPA
o Czym jest i jak działa EntityManager
o Konfiguracja Hibernate’a
o Mapowanie obiektów na bazę danych
o Relacje
o JPQL
4. Interceptory
5. JMS
6. Transakcje
7. Bezpieczeostwo wywołania usług
8. Usługi wyzwalane czasem
9. Wdrożenie
Tworzenie aplikacji z użyciem biblioteki Hibernate
copyright BNS MEDIA
www.devcastzone.com 21
22. Tworzenie aplikacji z użyciem EJB 3
http://www.devcastzone.com/course,tworzenie-aplikacji-z-
uzyciem-ejb3
Zapraszamy
Tworzenie aplikacji z użyciem biblioteki Hibernate
copyright BNS MEDIA
www.devcastzone.com 22