All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.persistence.PessimisticLockScope Maven / Gradle / Ivy

package javax.persistence;

/**
 * Defines the values of the javax.persistence.lock.scope property for pessimistic locking. This property may be passed as an
 * argument to the methods of the {@link EntityManager}, {@link Query}, and {@link TypedQuery} interfaces that allow lock modes to be
 * specified or used with the {@link NamedQuery} annotation.
 * 
 * @since Java Persistence 2.0
 */
public enum PessimisticLockScope {
	/**
	 * This value defines the default behavior for pessimistic locking.
	 * 

* The persistence provider must lock the database row(s) that correspond to the non-collection-valued persistent state of that * instance. If a joined inheritance strategy is used, or if the entity is otherwise mapped to a secondary table, this entails locking * the row(s) for the entity instance in the additional table(s). Entity relationships for which the locked entity contains the foreign * key will also be locked, but not the state of the referenced entities (unless those entities are explicitly locked). Element * collections and relationships for which the entity does not contain the foreign key (such as relationships that are mapped to join * tables or unidirectional one-to-many relationships for which the target entity contains the foreign key) will not be locked by * default. */ NORMAL, /** * In addition to the behavior for PessimisticLockScope.NORMAL, element collections and relationships owned by the entity * that are contained in join tables will be locked if the javax.persistence.lock.scope property is specified with a value * of PessimisticLockScope.EXTENDED. The state of entities referenced by such relationships will not be locked (unless * those entities are explicitly locked). Locking such a relationship or element collection generally locks only the rows in the join * table or collection table for that relationship or collection. This means that phantoms will be possible. */ EXTENDED }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy