Container transaction properties specify how an EJB container is to manage transaction scopes for the enterprise bean's method invocations. A transaction attribute is mapped to one or more methods.
An EJBs container provides a run-time environment for enterprise beans within the appserver. The container handles all aspects of an enterprise bean's operation within the application server and acts as an intermediary between the user-written business logic within the bean and the rest of the application server environment.
One or more EJB modules, each containing one or more enterprise beans, can be installed in a single container.
The EJB container provides many services to the enterprise bean, including...
- Beginning, committing, and rolling back transactions as necessary.
- Maintaining pools of enterprise bean instances ready for incoming requests and moving these instances between the inactive pools and an active state, ensuring that threading conditions within the bean are satisfied.
- Automatically synchronizing data in an entity bean's instance variables with corresponding data items stored in persistent storage.
By dynamically maintaining a set of active bean instances and synchronizing bean state with persistent storage when beans are moved into and out of active state, the container makes it possible for an application to manage many more bean instances than could otherwise simultaneously be held in the appserver's memory. In this respect, an EJB container provides services similar to virtual memory within an operating system.
Between transactions, the state of an entity bean can be cached. The EJB container supports option A, B, and C caching.