クラス SingleColumnRowMapper<T>

java.lang.ObjectSE
org.springframework.data.cassandra.core.cql.SingleColumnRowMapper<T>
実装されたすべてのインターフェース:
RowMapper<T>

public class SingleColumnRowMapper<T> extends ObjectSE implements RowMapper<T>
単一の列を行ごとに単一の結果値に変換する RowMapper 実装。単一の列のみを含む Row での操作を期待しています。

各行の結果値の型を指定できます。単一列の値は Row から抽出され、指定されたターゲット型に変換されます。

導入:
2.0
作成者:
Mark Paluch
関連事項:
  • コンストラクターの詳細

    • SingleColumnRowMapper

      public SingleColumnRowMapper()
      Bean スタイルの構成用に新しい SingleColumnRowMapper を作成します。
      関連事項:
    • SingleColumnRowMapper

      public SingleColumnRowMapper(ClassSE<T> requiredType)
      新しい SingleColumnRowMapper を作成します。

      代わりに newInstance(java.lang.Class<T>) ファクトリメソッドを使用することを検討してください。これにより、必要な型を 1 回だけ指定できます。

      パラメーター:
      requiredType - 各結果オブジェクトが一致すると予想される型
  • メソッドの詳細

    • setRequiredType

      public void setRequiredType(ClassSE<T> requiredType)
      各結果オブジェクトが一致すると予想される型を設定します。

      指定しない場合は、列の値は Row によって返されるとおりに公開されます。

    • mapRow

      public T mapRow(com.datastax.oss.driver.api.core.cql.Row row, int rowNum) throws com.datastax.oss.driver.api.core.DriverException
      現在の行の単一の列の値を抽出します。

      列が 1 つだけ選択されていることを検証し、必要に応じて getColumnValue() および convertValueToRequiredType にも委譲します。

      次で指定:
      インターフェース RowMapper<T>mapRow 
      パラメーター:
      row - マップする Row は null であってはなりません。
      rowNum - 現在の行の番号。
      戻り値:
      現在の行の結果オブジェクト。
      例外:
      com.datastax.oss.driver.api.core.DriverException - 列の値を取得する際に DriverException が発生した場合 (つまり、DriverException をキャッチする必要はありません。)
      関連事項:
    • getColumnValue

      @Nullable protected ObjectSE getColumnValue(com.datastax.oss.driver.api.core.cql.Row row, int index, @Nullable ClassSE<?> requiredType) throws com.datastax.oss.driver.api.core.DriverException
      指定された列の CQL オブジェクト値を取得します。

      デフォルトの実装は RowUtils.getRowValue(Row, int, Class) を呼び出します。必要な型が指定されていない場合、このメソッドは getColumnValue(rs, index) に委譲します。これは基本的に GettableByIndex.getObject(int) を呼び出しますが、適切な値型にいくつかの追加のデフォルト変換を適用します。

      パラメーター:
      row - データを保持する Row であり、null であってはなりません。
      index - 列インデックスです
      requiredType - 各結果オブジェクトが一致すると予想される型 (指定されていない場合は null)。
      戻り値:
      オブジェクトの値。
      例外:
      com.datastax.oss.driver.api.core.DriverException - 抽出に失敗した場合
      関連事項:
    • getColumnValue

      @Nullable protected ObjectSE getColumnValue(com.datastax.oss.driver.api.core.cql.Row row, int index)
      最も適切な値の型を使用して、指定された列のオブジェクト値を取得します。必要な型が指定されていない場合に呼び出されます。

      デフォルトの実装は、GettableByIndex.getObject(int) メソッドを使用する RowUtils.getRowValue(Row, int, Class) に委譲します。

      パラメーター:
      row - データを保持する Row であり、null であってはなりません。
      index - 列インデックスです
      戻り値:
      オブジェクトの値。
      例外:
      com.datastax.oss.driver.api.core.DriverException - 抽出に失敗した場合。
      関連事項:
    • convertValueToRequiredType

      protected ObjectSE convertValueToRequiredType(ObjectSE value, ClassSE<?> requiredType)
      指定された列の値を指定された必須の型に変換します。抽出された列の値がまだ一致しない場合にのみ呼び出されます。

      必要な型が String の場合、値は toString() を介して単純に文字列化されます。数値の場合、値は、数値変換または文字列解析(値の型に応じて)のいずれかによって数値に変換されます。

      パラメーター:
      value - getColumnValue() から抽出された列値 (非 null)
      requiredType - 各結果オブジェクトが一致すると予想される型 (非 null)
      戻り値:
      変換された値
      関連事項:
    • newInstance

      public static <T> SingleColumnRowMapper<T> newInstance(ClassSE<T> requiredType)
      新しい SingleColumnRowMapper を作成する静的ファクトリメソッド(必要な型を 1 回だけ指定)。
      パラメーター:
      requiredType - 各結果オブジェクトが一致すると予想される型