インターフェース KeyHolder
- すべての既知の実装クラス:
GeneratedKeyHolder
public interface KeyHolder
キーを取得するためのインターフェース。通常、JDBC 挿入ステートメントによって返される可能性がある自動生成キーに使用されます。
このインターフェースの実装は、任意の数のキーを保持できます。一般的なケースでは、キーは、キーの行ごとに 1 つのマップを含むリストとして返されます。
ほとんどのアプリケーションは、行ごとに 1 つのキーのみを使用し、挿入ステートメントで一度に 1 つの行のみを処理します。このような場合は、getKey
または getKeyAs
を呼び出してキーを取得してください。getKey
によって返される値は Number
SE であり、これは自動生成されたキーの通常の型です。その他の自動生成されたキー型については、代わりに getKeyAs
を使用してください。
- 導入:
- 1.1
- 作成者:
- Thomas Risberg, Juergen Hoeller, Slawomir Dymitrow
- 関連事項:
メソッドの詳細
getKey
最初のマップから最初のアイテムを取得します。1 つのアイテムと 1 つのマップしかなく、アイテムは数値であると仮定します。これは典型的なケースです: 単一の数値生成キー。キーはマップのリストに保持され、リストの各項目は各行のキーを表します。複数の列がある場合、マップにも複数のエントリがあります。このメソッドがマップまたはリストで複数のエントリを検出すると、複数のキーが返されたことを意味し、InvalidDataAccessApiUsageException がスローされます。
- 戻り値:
- 数値として生成されたキー
- 例外:
InvalidDataAccessApiUsageException
- 複数のキーが検出された場合- 関連事項:
getKeyAs
アイテムが 1 つとマップが 1 つだけであり、アイテムが指定された型のインスタンスであると想定して、最初のマップから最初のアイテムを取得します。これは一般的なケースです。指定された型の単一の生成されたキーです。キーはマップのリストに保持され、リストの各項目は各行のキーを表します。複数の列がある場合、マップにも複数のエントリがあります。このメソッドがマップまたはリストで複数のエントリを検出すると、複数のキーが返されたことを意味し、InvalidDataAccessApiUsageException がスローされます。
- パラメーター:
keyType
- 自動生成されたキーの型- 戻り値:
- 指定された型のインスタンスとして生成されたキー
- 例外:
InvalidDataAccessApiUsageException
- 複数のキーが検出された場合- 導入:
- 5.3
- 関連事項:
getKeys
キーの最初のマップを取得します。リストに複数のエントリがある場合(複数の行にキーが返されたことを意味します)、InvalidDataAccessApiUsageException がスローされます。
- 戻り値:
- 単一行の生成されたキーのマップ
- 例外:
InvalidDataAccessApiUsageException
- 複数行のキーが見つかった場合
getKeyList
キーを含むリストへの参照を返します。複数の行のキーの抽出(まれなケース)、およびキーの新しいマップの追加に使用できます。
- 戻り値:
- 生成されたキーのリスト。各エントリは、列名とキー値のマップを通じて個々の行を表します