Red Hat Training
A Red Hat training course is available for Red Hat JBoss Web Server
4.11. Locking
The default locking system in JPA is mostly based on optimistic locking (ie using a version column to check any concurrency issues). JPA has defined an additional mechanism to increase the concurrency guaranties. You can apply a lock on a given entity (and it's associated entities if
LOCK
is cascaded) through the lock(Object entity)
method. Depending on the concurrency guaranties you requires, you choose a lock mode:
LockMode.READ
prevents dirty-reads and non repeatable read on a given entity.LockMode.WRITE
prevents dirty-reads and non repeatable read on a given entity and force an increase of the version number if any.