Chapter 7. Transactions

In this chapter we will cover the following topics:

  • ACID properties of a transaction

  • Container-managed transactions

  • Container-managed transaction demarcation

  • Session synchronization interface

  • Doomed transactions

  • Transaction isolation levels

  • Lost update problem

  • Optimistic and pessimistic locking

  • How EJB 3 implements optimistic locking

  • Bean-managed transactions and the user transaction interface


Up to now our examples have, for the most part, used transactions by default. Most of our examples have used container-managed transactions. As the name suggests, the transaction lifecycle is controlled by the EJB container. Container-managed transactions use the Java Transaction API, or JTA. Container-managed transactions have a ...

Get EJB 3 Developer Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.