クラス DataAccessUtils

java.lang.ObjectSE
org.springframework.dao.support.DataAccessUtils

public abstract class DataAccessUtils extends ObjectSE
DAO 実装用のその他のユーティリティメソッド。

あらゆるデータアクセステクノロジで役立ちます。

導入:
1.0.2
作成者:
Juergen Hoeller
  • コンストラクターの詳細

    • DataAccessUtils

      public DataAccessUtils()
  • メソッドの詳細

    • singleResult

      @Nullable public static <T> T singleResult(@Nullable CollectionSE<T> results) throws IncorrectResultSizeDataAccessException
      指定されたコレクションから単一の結果オブジェクトを返します。

      0 個の結果オブジェクトが見つかった場合、null を返します。複数の要素が見つかった場合、例外をスローします。

      パラメーター:
      results - 結果コレクション (null にすることができます)
      戻り値:
      単一の結果オブジェクト、または存在しない場合は null 
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の要素が見つかった場合
    • singleResult

      @Nullable public static <T> T singleResult(@Nullable StreamSE<T> results) throws IncorrectResultSizeDataAccessException
      指定されたストリームから単一の結果オブジェクトを返します。

      0 個の結果オブジェクトが見つかった場合、null を返します。複数の要素が見つかった場合、例外をスローします。

      パラメーター:
      results - 結果ストリーム (null にすることができます)
      戻り値:
      単一の結果オブジェクト、または存在しない場合は null 
      例外:
      IncorrectResultSizeDataAccessException - 指定されたストリームで複数の要素が見つかった場合
      導入:
      6.1
    • singleResult

      @Nullable public static <T> T singleResult(@Nullable IteratorSE<T> results) throws IncorrectResultSizeDataAccessException
      指定された Iterator から単一の結果オブジェクトを返します。

      0 個の結果オブジェクトが見つかった場合、null を返します。複数の要素が見つかった場合、例外をスローします。

      パラメーター:
      results - 結果のイテレータ (null にすることができます)
      戻り値:
      単一の結果オブジェクト、または存在しない場合は null 
      例外:
      IncorrectResultSizeDataAccessException - 指定されたイテレータ内で複数の要素が見つかった場合
      導入:
      6.1
    • optionalResult

      public static <T> OptionalSE<T> optionalResult(@Nullable CollectionSE<T> results) throws IncorrectResultSizeDataAccessException
      指定されたコレクションから単一の結果オブジェクトを返します。

      0 個の結果オブジェクトが見つかった場合、Optional.empty() を返します。複数の要素が見つかった場合、例外をスローします。

      パラメーター:
      results - 結果コレクション (null にすることができます)
      戻り値:
      単一のオプションの結果オブジェクト、またはない場合は Optional.empty() 
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の要素が見つかった場合
      導入:
      6.1
    • optionalResult

      public static <T> OptionalSE<T> optionalResult(@Nullable StreamSE<T> results) throws IncorrectResultSizeDataAccessException
      指定されたストリームから単一の結果オブジェクトを返します。

      0 個の結果オブジェクトが見つかった場合、Optional.empty() を返します。複数の要素が見つかった場合、例外をスローします。

      パラメーター:
      results - 結果ストリーム (null にすることができます)
      戻り値:
      単一のオプションの結果オブジェクト、またはない場合は Optional.empty() 
      例外:
      IncorrectResultSizeDataAccessException - 指定されたストリームで複数の要素が見つかった場合
      導入:
      6.1
    • optionalResult

      public static <T> OptionalSE<T> optionalResult(@Nullable IteratorSE<T> results) throws IncorrectResultSizeDataAccessException
      指定された Iterator から単一の結果オブジェクトを返します。

      0 個の結果オブジェクトが見つかった場合、Optional.empty() を返します。複数の要素が見つかった場合、例外をスローします。

      パラメーター:
      results - 結果のイテレータ (null にすることができます)
      戻り値:
      単一のオプションの結果オブジェクト、またはない場合は Optional.empty() 
      例外:
      IncorrectResultSizeDataAccessException - 指定されたイテレータ内で複数の要素が見つかった場合
      導入:
      6.1
    • requiredSingleResult

      public static <T> T requiredSingleResult(@Nullable CollectionSE<T> results) throws IncorrectResultSizeDataAccessException
      指定されたコレクションから単一の結果オブジェクトを返します。

      0 個以上の要素が見つかった場合、例外をスローします。

      パラメーター:
      results - 結果コレクション (null にすることができますが、null 要素を含めることはできません)
      戻り値:
      単一の結果オブジェクト
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の要素が見つかった場合
      EmptyResultDataAccessException - 指定されたコレクションで要素がまったく見つからなかった場合
    • nullableSingleResult

      @Nullable public static <T> T nullableSingleResult(@Nullable CollectionSE<T> results) throws IncorrectResultSizeDataAccessException
      指定されたコレクションから単一の結果オブジェクトを返します。

      0 個以上の要素が見つかった場合、例外をスローします。

      パラメーター:
      results - 結果コレクション (null にすることができ、null 要素を含むことも期待されます)
      戻り値:
      単一の結果オブジェクト
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の要素が見つかった場合
      EmptyResultDataAccessException - 指定されたコレクションで要素がまったく見つからなかった場合
      導入:
      5.0.2
    • uniqueResult

      @Nullable public static <T> T uniqueResult(@Nullable CollectionSE<T> results) throws IncorrectResultSizeDataAccessException
      指定されたコレクションから一意の結果オブジェクトを返します。

      0 個の結果オブジェクトが見つかった場合は null を返します。複数のインスタンスが見つかった場合は、例外をスローします。

      パラメーター:
      results - 結果コレクション (null にすることができます)
      戻り値:
      一意の結果オブジェクト。存在しない場合は null 
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の結果オブジェクトが見つかった場合
      関連事項:
    • requiredUniqueResult

      public static <T> T requiredUniqueResult(@Nullable CollectionSE<T> results) throws IncorrectResultSizeDataAccessException
      指定されたコレクションから一意の結果オブジェクトを返します。

      0 または 1 つ以上のインスタンスが見つかった場合、例外をスローします。

      パラメーター:
      results - 結果コレクション (null にすることができますが、null 要素を含めることはできません)
      戻り値:
      一意の結果オブジェクト
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の結果オブジェクトが見つかった場合
      EmptyResultDataAccessException - 指定されたコレクションで結果オブジェクトがまったく見つからなかった場合
      関連事項:
    • objectResult

      public static <T> T objectResult(@Nullable CollectionSE<?> results, @Nullable ClassSE<T> requiredType) throws IncorrectResultSizeDataAccessException, TypeMismatchDataAccessException
      指定されたコレクションから一意の結果オブジェクトを返します。0 または 1 を超える結果オブジェクトが見つかった場合、または一意の結果オブジェクトが指定された必要な型に変換できない場合は、例外をスローします。
      パラメーター:
      results - 結果コレクション (null にすることができますが、null 要素を含めることはできません)
      戻り値:
      一意の結果オブジェクト
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の結果オブジェクトが見つかった場合
      EmptyResultDataAccessException - 指定されたコレクションで結果オブジェクトがまったく見つからなかった場合
      TypeMismatchDataAccessException - 一意のオブジェクトが指定された必要な型と一致しない場合
    • intResult

      指定されたコレクションから一意の int 結果を返します。0 または 1 を超える結果オブジェクトが見つかった場合、または一意の結果オブジェクトが int に変換できない場合は、例外をスローします。
      パラメーター:
      results - 結果コレクション (null にすることができますが、null 要素を含めることはできません)
      戻り値:
      ユニークな int 結果
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の結果オブジェクトが見つかった場合
      EmptyResultDataAccessException - 指定されたコレクションで結果オブジェクトがまったく見つからなかった場合
      TypeMismatchDataAccessException - コレクション内の一意のオブジェクトが int に変換できない場合
    • longResult

      指定されたコレクションから一意の長い結果を返します。0 または 1 を超える結果オブジェクトが見つかった場合、または一意の結果オブジェクトが long に変換できない場合は、例外をスローします。
      パラメーター:
      results - 結果コレクション (null にすることができますが、null 要素を含めることはできません)
      戻り値:
      ユニークな長い結果
      例外:
      IncorrectResultSizeDataAccessException - 指定されたコレクションで複数の結果オブジェクトが見つかった場合
      EmptyResultDataAccessException - 指定されたコレクションで結果オブジェクトがまったく見つからなかった場合
      TypeMismatchDataAccessException - コレクション内の一意のオブジェクトが long に変換できない場合
    • translateIfNecessary

      public static RuntimeExceptionSE translateIfNecessary(RuntimeExceptionSE rawException, PersistenceExceptionTranslator pet)
      適切な場合は変換された例外を返し、そうでない場合は指定された例外をそのまま返します。
      パラメーター:
      rawException - 変換したい例外
      pet - 変換を実行するために使用する PersistenceExceptionTranslator
      戻り値:
      変換が可能な場合は変換された永続化例外、それができない場合は生の例外