パッケージ jakarta.persistence

列挙型 PessimisticLockScope

  • 実装されたすべてのインターフェース:
    SerializableSEComparableSE<PessimisticLockScope>

    public enum PessimisticLockScope
    extends EnumSE<PessimisticLockScope>
    悲観的ロックの jakarta.persistence.lock.scope プロパティの値を定義します。このプロパティは、EntityManagerQueryTypedQuery インターフェースのメソッドに引数として渡すことができます。これにより、ロックモードを指定したり、NamedQuery アノテーションで使用したりできます。
    導入:
    2.0
    • 列挙定数の詳細

      • NORMAL

        public static final PessimisticLockScope NORMAL
        この値は、悲観的ロックのデフォルトの動作を定義します。

        永続性プロバイダーは、そのインスタンスのコレクション値ではない永続的な状態に対応するデータベース行をロックする必要があります。結合された継承戦略が使用されている場合、またはエンティティがセカンダリテーブルにマップされている場合、これには、追加のテーブル内のエンティティインスタンスの行をロックする必要があります。ロックされたエンティティに外部キーが含まれているエンティティ関連もロックされますが、参照されているエンティティの状態はロックされません(これらのエンティティが明示的にロックされている場合を除く)。エンティティに外部キーが含まれていない要素コレクションおよび関連(結合テーブルにマップされている関連や、ターゲットエンティティに外部キーが含まれている単方向の 1 対多の関連など)は、デフォルトではロックされません。

      • EXTENDED

        public static final PessimisticLockScope EXTENDED
        PessimisticLockScope.NORMAL の動作に加えて、jakarta.persistence.lock.scope プロパティが PessimisticLockScope.EXTENDED の値で指定されている場合、結合テーブルに含まれるエンティティが所有する要素コレクションと関連がロックされます。そのような関連によって参照されるエンティティの状態はロックされません(それらのエンティティが明示的にロックされていない限り)。このような関連または要素コレクションをロックすると、通常、その関連またはコレクションの結合テーブルまたはコレクションテーブルの行のみがロックされます。これは、ファントムが可能になることを意味します。
    • メソッドの詳細

      • values

        public static PessimisticLockScope[] values()
        この列挙型の定数を含む配列を、宣言されている順序で返します。このメソッドは、次のように定数を反復するために使用できます。
        for (PessimisticLockScope c : PessimisticLockScope.values())
            System.out.println(c);
        
        戻り値:
        この列挙型の定数を宣言されている順序で含む配列
      • valueOf

        public static PessimisticLockScope valueOf​(StringSE name)
        指定された名前を持つこの型の列挙定数を返します。文字列は、この型の列挙定数を宣言するために使用される識別子と正確に一致する必要があります。(余分な空白文字は許可されません。)
        パラメーター:
        name - 返される列挙定数の名前。
        戻り値:
        指定された名前の列挙定数
        例外:
        IllegalArgumentExceptionSE - この列挙型に指定された名前の定数がない場合
        NullPointerExceptionSE - 引数が null の場合