ZAWWW-2st1.2-w04.tresc-1.0-Slajd24

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Transakcje w EJB

Transakcje w EJB


Transakcje w EJB mogą być zarządzane przez kontener (CMT – ang. container-managed transactions) lub przez komponent (BMT – ang. bean-managed transactions).

Granice transakcji w transakcjach zarządzanych przez kontener są specyfikowane deklaratywnie poprzez tzw. atrybut transakcyjny. Atrybut ten określa sposób zachowania się metody komponentu EJB względem transakcji. Cały kod metody zawsze wykonuje się w ramach jednej transakcji. Jedna transakcja może obejmować działanie wielu metod różnych komponentów.

W transakcjach zarządzanych przez komponent granice transakcji są wyznaczane programowo poprzez wywołania odpowiednich metod – tak jak w serwletach. Podobnie jak w serwletach, transakcje zarządzane przez komponent mogą być realizowane poprzez interfejs JDBC lub JTA (Java Transaction API). Transakcje JDBC odbywają się w ramach otwartego połączenia z bazą danych (poprzez obiekt Connection). Transakcje JTA są zarządzane przez zarządcę transakcji Java EE w ramach serwera aplikacji i są „odporne” na zamykanie i otwieranie połączeń z bazą danych w trakcie ich trwania. JTA umożliwia też realizację transakcji rozproszonych.



<< Poprzedni slajd | Spis treści | Następny slajd >>