Transactions and Concurrency in Hibernate

Transactions and Concurrency in Hibernate

The most important point about Hibernate Entity Manager and concurrency control is that it is very easy to

Read More →

Entity manager and transaction scopes

To complete this picture you also have to think about database transactions

Read More →

Unit of work

The challenge is the implementation of this (and other) behavior outside an EJB3 container.

Read More →

Long units of work

A first naive implementation might keep the EntityManager and database transaction open during user

Read More →

Considering object identity

This approach leaves Hibernate and the database to worry about concurrency.

Read More →

Common concurrency control issues

Make sure you understand the implications before making a design decision.

Read More →

Database transaction demarcation

A JPA application can run in non-managed

Read More →

Non-managed environment

A call to close() marks the end of an EntityManager.

Read More →

EntityTransaction

It also provide a way to mark a transaction as rollback only, ie force the transaction to rollback.

Read More →

Using JTA

With Container Managed Transactions (CMT) in an EJB3 container, transaction demarcation

Read More →

Exception handling

The Hibernate entity manager generally raises exceptions which encapsulate the Hibernate core exception.

Read More →

EXTENDED Persistence Context

In an EXTENDED persistence context, all read only operations of the entity

Read More →

Container Managed Entity Manager

This is perfect to implement the entitymanager-per-conversation pattern.

Read More →

Application Managed Entity Manager

It is not legal to call entityManager.joinTransaction() if no JTA transaction is involved.

Read More →

Optimistic concurrency contro

The use cases we show are in the context of long application transactions but version checking.

Read More →

Application version checking in Hibernate

The version property is mapped using @Version, and the entity manager will automatically

Read More →

Extended entity manager and automatic versioning

This pattern is problematic if the persistence context is too big to be stored during user think time,

Read More →

Detached objects and automatic versioning

The application manipulates the state of detached instances originally loaded in another persistence context

Read More →
Transactions and Concurrency in Hibernate,Transactions and Concurrency in Hibernate,Entity manager and transaction scopes,Unit of work,Long units of work,Considering object identity,Common concurrency control issues,Database transaction demarcation,Non-managed environment,EntityTransaction,Using JTA,Exception handling,EXTENDED Persistence Context,Container Managed Entity Manager,Application Managed Entity Manager,Optimistic concurrency contro,Application version checking in Hibernate,Extended entity manager and automatic versioning,Detached objects and automatic versioning