Class GeneratedKeyHolder
- All Implemented Interfaces:
- KeyHolder
KeyHolder interface, to be used for
 holding auto-generated keys (as potentially returned by JDBC insert statements).
 Create an instance of this class for each insert operation, and pass it
 to the corresponding JdbcTemplate or
 SqlUpdate methods.
- Since:
- 1.1
- Author:
- Thomas Risberg, Juergen Hoeller, Slawomir Dymitrow
- 
Constructor SummaryConstructorsConstructorDescriptionCreate a new GeneratedKeyHolder with a default list.GeneratedKeyHolder(List<Map<String, Object>> keyList) Create a new GeneratedKeyHolder with a given list.
- 
Method SummaryModifier and TypeMethodDescriptiongetKey()Retrieve the first item from the first map, assuming that there is just one item and just one map, and that the item is a number.<T> @Nullable TRetrieve the first item from the first map, assuming that there is just one item and just one map, and that the item is an instance of specified type.Return a reference to the List that contains the keys.getKeys()Retrieve the first map of keys.
- 
Constructor Details- 
GeneratedKeyHolderpublic GeneratedKeyHolder()Create a new GeneratedKeyHolder with a default list.
- 
GeneratedKeyHolder
 
- 
- 
Method Details- 
getKeypublic @Nullable Number getKey() throws InvalidDataAccessApiUsageException, DataRetrievalFailureExceptionDescription copied from interface:KeyHolderRetrieve the first item from the first map, assuming that there is just one item and just one map, and that the item is a number. This is the typical case: a single, numeric generated key.Keys are held in a List of Maps, where each item in the list represents the keys for each row. If there are multiple columns, then the Map will have multiple entries as well. If this method encounters multiple entries in either the map or the list meaning that multiple keys were returned, then an InvalidDataAccessApiUsageException is thrown. - Specified by:
- getKeyin interface- KeyHolder
- Returns:
- the generated key as a number
- Throws:
- InvalidDataAccessApiUsageException- if multiple keys are encountered
- DataRetrievalFailureException
- See Also:
 
- 
getKeyAspublic <T> @Nullable T getKeyAs(Class<T> keyType) throws InvalidDataAccessApiUsageException, DataRetrievalFailureException Description copied from interface:KeyHolderRetrieve the first item from the first map, assuming that there is just one item and just one map, and that the item is an instance of specified type. This is a common case: a single generated key of the specified type.Keys are held in a List of Maps, where each item in the list represents the keys for each row. If there are multiple columns, then the Map will have multiple entries as well. If this method encounters multiple entries in either the map or the list meaning that multiple keys were returned, then an InvalidDataAccessApiUsageException is thrown. - Specified by:
- getKeyAsin interface- KeyHolder
- Parameters:
- keyType- the type of the auto-generated key
- Returns:
- the generated key as an instance of specified type
- Throws:
- InvalidDataAccessApiUsageException- if multiple keys are encountered
- DataRetrievalFailureException
- See Also:
 
- 
getKeysDescription copied from interface:KeyHolderRetrieve the first map of keys.If there are multiple entries in the list (meaning that multiple rows had keys returned), then an InvalidDataAccessApiUsageException is thrown. - Specified by:
- getKeysin interface- KeyHolder
- Returns:
- the Map of generated keys for a single row
- Throws:
- InvalidDataAccessApiUsageException- if keys for multiple rows are encountered
 
- 
getKeyListDescription copied from interface:KeyHolderReturn a reference to the List that contains the keys.Can be used for extracting keys for multiple rows (an unusual case), and also for adding new maps of keys. - Specified by:
- getKeyListin interface- KeyHolder
- Returns:
- the List for the generated keys, with each entry representing an individual row through a Map of column names and key values
 
 
-