enterprise javabeans pełna wersja, ebooki
[ Pobierz całość w formacie PDF ]
//-->6Enterprise JavaBeansInterfejsy lokalne ..............................................................................................69Deskryptor rozmieszczenia ................................................................................71Pliki wymagane przez producentów serwerów.....................................................73Plik ejb-jar .......................................................................................................73Podsumowanie dotyczące wprowadzonych pojęć.................................................74Podsumowanie .......................................................................................................76Rozdział 3. Twój pierwszy komponent ................................................................ 77Jak opracować komponent EJB? ..............................................................................77Interfejs zdalny.......................................................................................................78Interfejs lokalny......................................................................................................79Interfejs domowy....................................................................................................80Lokalny interfejs domowy .......................................................................................81Klasa komponentu ..................................................................................................83Deskryptor rozmieszczenia ......................................................................................86Pliki wymagane przez producentów serwerów ..........................................................87Plik ejb-jar .............................................................................................................87Wdra anie komponentu...........................................................................................88Opcjonalny plik jar dla klienta EJB ..........................................................................89Jak wywoływać komponenty?..................................................................................90Znajdowanie obiektu domowego ........................................................................90Uruchamianie systemu ............................................................................................94Wyjście po stronie serwera ................................................................................94Wyjście po stronie klienta ..................................................................................95Implementacja interfejsów komponentu ....................................................................95Rozwiązanie .....................................................................................................96Podsumowanie .......................................................................................................96Część IITriada komponentów ....................................................... 97Czas ycia komponentu sesyjnego............................................................................99Podtypy komponentów sesyjnych .......................................................................... 100Stanowe komponenty sesyjne .......................................................................... 100Bezstanowe komponenty sesyjne ..................................................................... 101Specjalne właściwości stanowych komponentów sesyjnych...................................... 102Realizowanie efektu gromadzenia komponentów stanowych............................... 102Zasady zarządzania stanem konwersacji............................................................ 104Zwrotne metody aktywacji i pasywacji.............................................................. 105Podsumowanie implementacji metod ................................................................ 107Prosty bezstanowy komponent sesyjny ............................................................. 109Diagramy cyklu ycia komponentów sesyjnych ................................................. 116Podsumowanie ..................................................................................................... 119Rozdział 4. Wprowadzenie do komponentów sesyjnych ....................................... 99Rozdział 5. Wprowadzenie do komponentów encyjnych..................................... 121Pojęcia związane z trwałością ................................................................................ 122Serializacja obiektów Javy ............................................................................... 122Odwzorowanie obiektowo-relacyjne ................................................................. 122Obiektowe bazy danych................................................................................... 124Czym jest komponent encyjny?.............................................................................. 125Pliki składające się na komponent encyjny ........................................................ 127Własności komponentów encyjnych ....................................................................... 128Komponenty encyjne — odporność na awarie ................................................... 128Komponent encyjny — perspektywa bazy danych ............................................. 129Wiele egzemplarzy komponentu encyjnego mo e reprezentować te same dane..... 130Spis treści7Egzemplarze komponentów encyjnych mogą być gromadzone............................ 131Istnieją dwa sposoby utrwalania komponentów encyjnych .................................. 134Tworzenie i usuwanie komponentów encyjnych ................................................ 135Wyszukiwanie komponentów encyjnych........................................................... 136Modyfikacja danych komponentu encyjnego bez EJB ........................................ 137Kontekst encji ...................................................................................................... 138Metody getEJBLocalObject() oraz getEJBObject()............................................. 139Metoda getPrimaryKey() ................................................................................. 139Podsumowanie ..................................................................................................... 140Rozdział 6. Pisanie komponentów encyjnychbezpośrednio zarządzających trwałością.......................................... 141Podstawy kodowania komponentów encyjnych ....................................................... 141Znajdowanie istniejących komponentów encyjnych — metody ejbFind()............. 143Przykład komponentu encyjnegobezpośrednio zarządzającego trwałością — konto bankowe ................................... 148Plik Konto.java............................................................................................... 149Plik KontoLokalny.java ................................................................................... 150Plik KontoDomowy.java ................................................................................. 151Plik KontoLokalnyDomowy.java...................................................................... 153Plik KontoKG.java.......................................................................................... 154Plik KontoKomponent.java.............................................................................. 155Plik KontoException.java ................................................................................ 166Plik Klient.java............................................................................................... 166Deskryptor rozmieszczenia .............................................................................. 168Deskryptor rozmieszczenia charakterystyczny dla kontenera EJB........................ 170Przygotowanie bazy danych............................................................................. 170Uruchamianie programu klienta ............................................................................. 171Wyjście po stronie serwera .............................................................................. 171Wyjście po stronie klienta ................................................................................ 172Podsumowanie — cykl ycia komponentów encyjnych typu BMP ............................ 173Podsumowanie ..................................................................................................... 175Rozdział 7. Pisanie komponentów encyjnycho trwałości zarządzanej przez kontener ........................................... 177Cechy komponentów encyjnych CMP .................................................................... 177Komponenty encyjne CMP jako podklasy ......................................................... 177Komponenty Encyjne CMP nie zawierają zadeklarowanych pól .......................... 178Definiowanie metod zwracających (ustawiających) wartości pólw podklasie komponentu ............................................................................... 180Komponenty encyjne CMP— działanie według abstrakcyjnego schematu trwałości ................................... 182Własny język zapytań komponentów encyjnych CMP........................................ 183Komponenty encyjne CMP zawierające metody ejbSelect() ................................ 185Wskazówki dotyczące programowania komponentów encyjnycho trwałości zarządzanej przez kontener................................................................. 186Przykład komponentu encyjnegoo trwałości zarządzanej przez kontener Linia produktów........................................ 190Plik Produkt.java ............................................................................................ 191Plik ProduktLokalny.java ................................................................................ 191Plik ProduktDomowy.java............................................................................... 192Plik ProduktLokalnyDomowy.java ................................................................... 194Plik ProduktKG.java ....................................................................................... 195Plik ProduktKomponent.java ........................................................................... 1968Enterprise JavaBeansDeskryptor rozmieszczenia .............................................................................. 200Deskryptor rozmieszczenia specyficzny dla kontenera........................................ 203Plik Klient.java............................................................................................... 203Uruchamianie programu klienta ............................................................................. 206Cykl ycia komponentów encyjnych typu CMP....................................................... 206Podsumowanie ..................................................................................................... 207Rozdział 8. Komponenty sterowane komunikatami — wprowadzenie ................. 209Powody stosowania komponentów sterowanych komunikatami ................................ 210Java Message Service (JMS).................................................................................. 211Domeny przesyłania komunikatów ................................................................... 212Interfejs programowy JMS............................................................................... 214Połączenie usług JMS z technologią EJB ................................................................ 217Komponent sterowany komunikatami ............................................................... 219Programowanie komponentów sterowanych komunikatami ...................................... 222Semantyka ..................................................................................................... 222Prosty przykład............................................................................................... 224Zagadnienia zaawansowane ................................................................................... 230Problemy związane z komponentami sterowanymi komunikatami ............................. 233Uporządkowanie komunikatów ........................................................................ 233Brak wywołań metody ejbRemove()................................................................. 234Trujące komunikaty ........................................................................................ 234Jak zwracać wyniki do producentów komunikatów?........................................... 237Przyszłość — asynchroniczne wywoływanie metod ........................................... 241Podsumowanie ..................................................................................................... 242Rozdział 9. Dodawanie funkcjonalności do komponentów ................................. 243Wywoływanie komponentów z poziomu innych komponentów................................. 243Domyślne wyszukiwanie JNDI......................................................................... 244Odwołania EJB............................................................................................... 245Źródła zasobów .................................................................................................... 247Własności środowiska ........................................................................................... 249Zagadnienia związane z bezpieczeństwem EJB ....................................................... 251Krok pierwszy — uwierzytelnienie ................................................................... 251Krok drugi — autoryzacja................................................................................ 261Propagacja bezpieczeństwa .............................................................................. 269Mechanizm uchwytów .......................................................................................... 271Uchwyty domowe........................................................................................... 272Podsumowanie ..................................................................................................... 272Część III Zaawansowane elementytechnologii Enterprise JavaBeans .................................. 273Rozdział 10. Transakcje .................................................................................... 275Przyczyny stosowania transakcji ............................................................................ 275Operacje atomowe .......................................................................................... 276Awaria sieci lub komputera.............................................................................. 277Dane współdzielone przez wielu u ytkowników ................................................ 278Korzyści płynące ze stosowania transakcji .............................................................. 279Własności ACID ............................................................................................. 279Modele transakcyjne ............................................................................................. 282Transakcje płaskie........................................................................................... 282Transakcje zagnie d one ................................................................................. 284Inne modele transakcyjne ................................................................................ 285Spis treści9Włączanie transakcji do technologii Enterprise JavaBeans........................................ 285Oddzielenie systemu transakcyjnego................................................................. 286Transakcje deklaratywne, programowane i inicjowane przez klienta .................... 286Wybór stylu transakcji..................................................................................... 289Transakcje zarządzane przez kontener .................................................................... 291Wartości atrybutów transakcji EJB ................................................................... 292Transakcje programowane w technologii EJB.......................................................... 298Usługa transakcji obiektów CORBA ................................................................. 298Usługa transakcji Javy (JTS)............................................................................ 299Interfejs transakcji Javy (JTA).......................................................................... 299Porównanie transakcji deklaratywnych i programowanychna odpowiednim przykładzie.......................................................................... 301Transakcje w kodzie klienta ................................................................................... 303Izolacja transakcji ................................................................................................. 305Potrzeba kontroli współbie ności...................................................................... 305Izolacja w technologii EJB............................................................................... 306Problem brudnego odczytu .............................................................................. 308Problem niepowtarzalnego odczytu................................................................... 309Problem widma............................................................................................... 310Izolacja transakcji — podsumowanie ................................................................ 311Izolacja w środowisku EJB .............................................................................. 312Pesymistyczna i optymistyczna kontrola współbie ności .................................... 312Transakcje rozproszone......................................................................................... 313Trwałość i dwufazowy protokół zatwierdzania................................................... 314Protokół komunikacji transakcyjnej oraz kontekst transakcji ............................... 316Projektowanie konwersacji transakcyjnych w technologii EJB .................................. 317Podsumowanie ..................................................................................................... 320Rozdział 11. Powiązania komponentów typu BMP i CMP .................................... 321Ró nice pomiędzy CMP i BMP ............................................................................. 322Liczność .............................................................................................................. 322Związki 1:1 .................................................................................................... 324Związki 1:N.................................................................................................... 327Związki M:N .................................................................................................. 331Kierunkowość ...................................................................................................... 338Implementowanie kierunkowości w komponentach typu BMP............................ 338Implementowanie kierunkowości w komponentach typu CMP............................ 339Kierunkowość mo e nie odwzorowywać schematu bazy danych ......................... 341Dwukierunkowe czy jednokierunkowe? ............................................................ 342Leniwe ładowanie ................................................................................................. 342Agregacja, składanie oraz usuwanie kaskadowe....................................................... 343Relacje i język EJB-QL ......................................................................................... 345Związki rekursywne.............................................................................................. 346Związki cykliczne ................................................................................................. 347Integralność powiązań ........................................................................................... 348Relacje, integracja związków oraz kod klienta ................................................... 349Podsumowanie ..................................................................................................... 351Rozdział 12. Najlepsze nawyki utrwalania danych............................................... 353Kiedy korzystać z komponentów encyjnych? .......................................................... 354Kontrola......................................................................................................... 354Analogie przekazywania parametrów................................................................ 354Dane proceduralne i obiektowe......................................................................... 355Buforowanie................................................................................................... 355
[ Pobierz całość w formacie PDF ]