パッケージ jakarta.persistence

インターフェース Query

    • メソッドの詳細

      • getResultList

        ListSE getResultList()
        SELECT クエリを実行し、クエリの結果を型なしリストとして返します。
        戻り値:
        結果のリスト
        例外:
        IllegalStateExceptionSE - Jakarta Persistence 照会言語 UPDATE または DELETE ステートメントが必要な場合
        QueryTimeoutException - クエリ実行が設定されたクエリタイムアウト値を超え、ステートメントのみがロールバックされる場合
        TransactionRequiredException - NONE 以外のロックモードが設定されていて、トランザクションがない場合、または永続コンテキストがトランザクションに参加していない場合
        PessimisticLockException - 悲観的ロックが失敗し、トランザクションがロールバックされた場合
        LockTimeoutException - 悲観的ロックが失敗し、ステートメントのみがロールバックされる場合
        PersistenceException - クエリ実行が設定されたクエリタイムアウト値を超え、トランザクションがロールバックされた場合
      • getResultStream

        default StreamSE getResultStream()
        SELECT クエリを実行し、クエリ結果を型なし java.util.stream.Stream として返します。デフォルトでは、このメソッドは getResultList().stream() に委譲しますが、永続性プロバイダーは追加の機能を提供するためにこのメソッドをオーバーライドすることを選択できます。
        戻り値:
        結果のストリーム
        例外:
        IllegalStateExceptionSE - Jakarta Persistence 照会言語 UPDATE または DELETE ステートメントが必要な場合
        QueryTimeoutException - クエリ実行が設定されたクエリタイムアウト値を超え、ステートメントのみがロールバックされる場合
        TransactionRequiredException - NONE 以外のロックモードが設定されていて、トランザクションがない場合、または永続コンテキストがトランザクションに参加していない場合
        PessimisticLockException - 悲観的ロックが失敗し、トランザクションがロールバックされた場合
        LockTimeoutException - 悲観的ロックが失敗し、ステートメントのみがロールバックされる場合
        PersistenceException - クエリ実行が設定されたクエリタイムアウト値を超え、トランザクションがロールバックされた場合
        導入:
        2.2
        関連事項:
        StreamSE, getResultList()
      • getSingleResult

        ObjectSE getSingleResult()
        型なしの単一の結果を返す SELECT クエリを実行します。
        戻り値:
        結果
        例外:
        NoResultException - 結果がない場合
        NonUniqueResultException - 複数の結果の場合
        IllegalStateExceptionSE - Jakarta Persistence 照会言語 UPDATE または DELETE ステートメントが必要な場合
        QueryTimeoutException - クエリ実行が設定されたクエリタイムアウト値を超え、ステートメントのみがロールバックされる場合
        TransactionRequiredException - NONE 以外のロックモードが設定されていて、トランザクションがない場合、または永続コンテキストがトランザクションに参加していない場合
        PessimisticLockException - 悲観的ロックが失敗し、トランザクションがロールバックされた場合
        LockTimeoutException - 悲観的ロックが失敗し、ステートメントのみがロールバックされる場合
        PersistenceException - クエリ実行が設定されたクエリタイムアウト値を超え、トランザクションがロールバックされた場合
      • executeUpdate

        int executeUpdate()
        更新または削除ステートメントを実行します。
        戻り値:
        更新または削除されたエンティティの数
        例外:
        IllegalStateExceptionSE - Jakarta Persistence 照会言語 SELECT ステートメントまたは条件照会のために呼び出された場合
        TransactionRequiredException - トランザクションがないか、永続コンテキストがトランザクションに参加していない場合
        QueryTimeoutException - ステートメントの実行が設定されたクエリタイムアウト値を超え、ステートメントのみがロールバックされる場合
        PersistenceException - クエリ実行が設定されたクエリタイムアウト値を超え、トランザクションがロールバックされた場合
      • setMaxResults

        Query setMaxResults​(int maxResult)
        取得する結果の最大数を設定します。
        パラメーター:
        maxResult - 取得する結果の最大数
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - 引数が負の場合
      • getMaxResults

        int getMaxResults()
        クエリオブジェクトが取得するように設定された結果の最大数。setMaxResults がクエリオブジェクトに適用されなかった場合、Integer.MAX_VALUE を返します。
        戻り値:
        結果の最大数
        導入:
        2.0
      • setFirstResult

        Query setFirstResult​(int startPosition)
        取得する最初の結果の位置を設定します。
        パラメーター:
        startPosition - 0 から番号付けされた最初の結果の位置
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - 引数が負の場合
      • getFirstResult

        int getFirstResult()
        クエリオブジェクトが取得するように設定された最初の結果の位置。setFirstResult がクエリオブジェクトに適用されなかった場合、0 を返します。
        戻り値:
        最初の結果の位置
        導入:
        2.0
      • setHint

        Query setHint​(StringSE hintName,
                      ObjectSE value)
        クエリのプロパティまたはヒントを設定します。ヒント要素を使用して、クエリのプロパティとヒントを指定できます。この仕様で定義されているプロパティは、プロバイダーが遵守する必要があります。プロバイダーによって認識されないベンダー固有のヒントは、確認なしで無視する必要があります。ポータブルアプリケーションは、標準のタイムアウトヒントに依存しないでください。使用中のデータベースとプロバイダーが使用するロックメカニズムに応じて、このヒントは観察される場合とされない場合があります。
        パラメーター:
        hintName - プロパティまたはヒントの名前
        value - プロパティまたはヒントの値
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - 2 番目の引数が実装に有効でない場合
      • getHints

        MapSE<StringSE,​ObjectSE> getHints()
        クエリインスタンスに有効なプロパティとヒント、および関連する値を取得します。
        戻り値:
        クエリのプロパティとヒント
        導入:
        2.0
      • setParameter

        <T> Query setParameter​(Parameter<T> param,
                               T value)
        Parameter オブジェクトの値をバインドします。
        パラメーター:
        param - パラメーターオブジェクト
        value - パラメーター値
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - パラメーターがクエリのパラメーターに対応していない場合
        導入:
        2.0
      • setParameter

        Query setParameter​(Parameter<CalendarSE> param,
                           CalendarSE value,
                           TemporalType temporalType)
        java.util.Calendar のインスタンスを Parameter オブジェクトにバインドします。
        パラメーター:
        param - パラメーターオブジェクト
        value - パラメーター値
        temporalType - 時間型
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - パラメーターがクエリのパラメーターに対応していない場合
        導入:
        2.0
      • setParameter

        Query setParameter​(Parameter<DateSE> param,
                           DateSE value,
                           TemporalType temporalType)
        java.util.Date のインスタンスを Parameter オブジェクトにバインドします。
        パラメーター:
        param - パラメーターオブジェクト
        value - パラメーター値
        temporalType - 時間型
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - パラメーターがクエリのパラメーターに対応していない場合
        導入:
        2.0
      • setParameter

        Query setParameter​(StringSE name,
                           ObjectSE value)
        引数値を名前付きパラメーターにバインドします。
        パラメーター:
        name - パラメーター名
        value - パラメーター値
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - パラメーター名がクエリのパラメーターに対応していない場合、または引数の型が正しくない場合
      • setParameter

        Query setParameter​(StringSE name,
                           CalendarSE value,
                           TemporalType temporalType)
        java.util.Calendar のインスタンスを名前付きパラメーターにバインドします。
        パラメーター:
        name - パラメーター名
        value - パラメーター値
        temporalType - 時間型
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - パラメーター名がクエリのパラメーターに対応していない場合、または値の引数の型が正しくない場合
      • setParameter

        Query setParameter​(StringSE name,
                           DateSE value,
                           TemporalType temporalType)
        java.util.Date のインスタンスを名前付きパラメーターにバインドします。
        パラメーター:
        name - パラメーター名
        value - パラメーター値
        temporalType - 時間型
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - パラメーター名がクエリのパラメーターに対応していない場合、または値の引数の型が正しくない場合
      • setParameter

        Query setParameter​(int position,
                           ObjectSE value)
        引数値を定位置パラメーターにバインドします。
        パラメーター:
        position - 位置
        value - パラメーター値
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - 位置がクエリの位置パラメーターに対応していない場合、または引数の型が正しくない場合
      • setParameter

        Query setParameter​(int position,
                           CalendarSE value,
                           TemporalType temporalType)
        java.util.Calendar のインスタンスを定位置パラメーターにバインドします。
        パラメーター:
        position - 位置
        value - パラメーター値
        temporalType - 時間型
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - 位置がクエリの位置パラメーターに対応していない場合、または値の引数の型が正しくない場合
      • setParameter

        Query setParameter​(int position,
                           DateSE value,
                           TemporalType temporalType)
        java.util.Date のインスタンスを定位置パラメーターにバインドします。
        パラメーター:
        position - 位置
        value - パラメーター値
        temporalType - 時間型
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalArgumentExceptionSE - 位置がクエリの位置パラメーターに対応していない場合、または値の引数の型が正しくない場合
      • getParameters

        SetSE<Parameter<?>> getParameters()
        クエリの宣言されたパラメーターに対応するパラメーターオブジェクトを取得します。クエリにパラメーターがない場合、空のセットを返します。このメソッドは、ネイティブクエリでサポートされる必要はありません。
        戻り値:
        パラメーターオブジェクトのセット
        例外:
        IllegalStateExceptionSE - 実装がこの使用をサポートしていないときにネイティブクエリで呼び出された場合
        導入:
        2.0
      • getParameter

        Parameter<?> getParameter​(StringSE name)
        指定された名前の宣言されたパラメーターに対応するパラメーターオブジェクトを取得します。このメソッドは、ネイティブクエリでサポートされる必要はありません。
        パラメーター:
        name - パラメーター名
        戻り値:
        パラメーターオブジェクト
        例外:
        IllegalArgumentExceptionSE - 指定された名前のパラメーターが存在しない場合
        IllegalStateExceptionSE - 実装がこの使用をサポートしていないときにネイティブクエリで呼び出された場合
        導入:
        2.0
      • getParameter

        <T> Parameter<T> getParameter​(StringSE name,
                                      ClassSE<T> type)
        指定された名前と型の宣言されたパラメーターに対応するパラメーターオブジェクトを取得します。このメソッドは、条件クエリでのみサポートされる必要があります。
        パラメーター:
        name - パラメーター名
        type - 型
        戻り値:
        パラメーターオブジェクト
        例外:
        IllegalArgumentExceptionSE - 指定された名前のパラメーターが存在しないか、型に割り当てられない場合
        IllegalStateExceptionSE - 実装がこの使用をサポートしていないときに、ネイティブクエリまたは Jakarta Persistence クエリ言語クエリで呼び出された場合
        導入:
        2.0
      • getParameter

        Parameter<?> getParameter​(int position)
        指定された位置で宣言された位置パラメーターに対応するパラメーターオブジェクトを取得します。このメソッドは、ネイティブクエリでサポートされる必要はありません。
        パラメーター:
        position - 位置
        戻り値:
        パラメーターオブジェクト
        例外:
        IllegalArgumentExceptionSE - 指定された位置のパラメーターが存在しない場合
        IllegalStateExceptionSE - 実装がこの使用をサポートしていないときにネイティブクエリで呼び出された場合
        導入:
        2.0
      • getParameter

        <T> Parameter<T> getParameter​(int position,
                                      ClassSE<T> type)
        指定された位置と型で宣言された定位置パラメーターに対応するパラメーターオブジェクトを取得します。このメソッドは、プロバイダーによってサポートされる必要はありません。
        パラメーター:
        position - 位置
        type - 型
        戻り値:
        パラメーターオブジェクト
        例外:
        IllegalArgumentExceptionSE - 指定された位置のパラメーターが存在しないか、型に割り当てられない場合
        IllegalStateExceptionSE - 実装がこの使用をサポートしていないときに、ネイティブクエリまたは Jakarta Persistence クエリ言語クエリで呼び出された場合
        導入:
        2.0
      • isBound

        boolean isBound​(Parameter<?> param)
        値がパラメーターにバインドされているかどうかを示すブール値を返します。
        パラメーター:
        param - パラメーターオブジェクト
        戻り値:
        パラメーターがバインドされているかどうかを示すブール値
        導入:
        2.0
      • getParameterValue

        <T> T getParameterValue​(Parameter<T> param)
        パラメーターにバインドされた入力値を返します。(OUT パラメーターはバインドされていないことに注意してください。)
        パラメーター:
        param - パラメーターオブジェクト
        戻り値:
        パラメーター値
        例外:
        IllegalArgumentExceptionSE - パラメーターがクエリのパラメーターでない場合
        IllegalStateExceptionSE - パラメーターがバインドされていない場合
        導入:
        2.0
      • getParameterValue

        ObjectSE getParameterValue​(StringSE name)
        名前付きパラメーターにバインドされた入力値を返します。(OUT パラメーターはバインドされていないことに注意してください。)
        パラメーター:
        name - パラメーター名
        戻り値:
        パラメーター値
        例外:
        IllegalStateExceptionSE - パラメーターがバインドされていない場合
        IllegalArgumentExceptionSE - 指定された名前のパラメーターが存在しない場合
        導入:
        2.0
      • getParameterValue

        ObjectSE getParameterValue​(int position)
        位置パラメーターにバインドされた入力値を返します。(OUT パラメーターはバインドされていないことに注意してください。)
        パラメーター:
        position - 位置
        戻り値:
        パラメーター値
        例外:
        IllegalStateExceptionSE - パラメーターがバインドされていない場合
        IllegalArgumentExceptionSE - 指定された位置のパラメーターが存在しない場合
        導入:
        2.0
      • setFlushMode

        Query setFlushMode​(FlushModeType flushMode)
        クエリの実行に使用するフラッシュモード型を設定します。フラッシュモード型は、エンティティマネージャーで使用されているフラッシュモード型に関係なく、クエリに適用されます。
        パラメーター:
        flushMode - フラッシュモード
        戻り値:
        同じクエリインスタンス
      • getFlushMode

        FlushModeType getFlushMode()
        クエリ実行に有効なフラッシュモードを取得します。クエリオブジェクトにフラッシュモードが設定されていない場合、エンティティマネージャーに有効なフラッシュモードを返します。
        戻り値:
        フラッシュモード
        導入:
        2.0
      • setLockMode

        Query setLockMode​(LockModeType lockMode)
        クエリの実行に使用するロックモード型を設定します。
        パラメーター:
        lockMode - ロックモード
        戻り値:
        同じクエリインスタンス
        例外:
        IllegalStateExceptionSE - クエリが Jakarta Persistence クエリ言語 SELECT クエリまたは CriteriaQuery クエリでないことが判明した場合
        導入:
        2.0
      • getLockMode

        LockModeType getLockMode()
        クエリの現在のロックモードを取得します。クエリオブジェクトにロックモードが設定されていない場合は null を返します。
        戻り値:
        ロックモード
        例外:
        IllegalStateExceptionSE - クエリが Jakarta Persistence クエリ言語 SELECT クエリまたは Criteria API クエリでないことが判明した場合
        導入:
        2.0
      • unwrap

        <T> T unwrap​(ClassSE<T> cls)
        指定した型のオブジェクトを返し、プロバイダー固有の API へのアクセスを許可します。プロバイダーのクエリ実装が指定されたクラスをサポートしない場合、PersistenceException がスローされます。
        パラメーター:
        cls - 返されるオブジェクトのクラス。これは通常、基になるクエリ実装クラスまたはそれが実装するインターフェースのいずれかです。
        戻り値:
        指定されたクラスのインスタンス
        例外:
        PersistenceException - プロバイダーが呼び出しをサポートしていない場合
        導入:
        2.0