public abstract class AbstractIdentityColumnMaxValueIncrementer extends AbstractColumnMaxValueIncrementer
DataFieldMaxValueIncrementer implementations
 which are based on identity columns in a sequence-like table.paddingLength| Constructor and Description | 
|---|
| AbstractIdentityColumnMaxValueIncrementer()Default constructor for bean property style usage. | 
| AbstractIdentityColumnMaxValueIncrementer(DataSource dataSource,
                                         String incrementerName,
                                         String columnName) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected String | getDeleteStatement(long[] values)Statement to use to clean up "sequence" values. | 
| protected abstract String | getIdentityStatement()Statement to use to obtain the current identity value. | 
| protected abstract String | getIncrementStatement()Statement to use to increment the "sequence" value. | 
| protected long | getNextKey()Determine the next key to use, as a long. | 
| boolean | isDeleteSpecificValues()Return whether to delete the entire range below the current maximum key value
 ( false- the default), or the specifically generated values (true). | 
| void | setDeleteSpecificValues(boolean deleteSpecificValues)Specify whether to delete the entire range below the current maximum key value
 ( false- the default), or the specifically generated values (true). | 
afterPropertiesSet, getCacheSize, getColumnName, setCacheSize, setColumnNamegetDataSource, getIncrementerName, getPaddingLength, nextIntValue, nextLongValue, nextStringValue, setDataSource, setIncrementerName, setPaddingLengthpublic AbstractIdentityColumnMaxValueIncrementer()
public AbstractIdentityColumnMaxValueIncrementer(DataSource dataSource, String incrementerName, String columnName)
public void setDeleteSpecificValues(boolean deleteSpecificValues)
false - the default), or the specifically generated values (true).
 The former mode will use a where range clause whereas the latter will use an in
 clause starting with the lowest value minus 1, just preserving the maximum value.public boolean isDeleteSpecificValues()
false - the default), or the specifically generated values (true).protected long getNextKey()
                   throws DataAccessException
AbstractDataFieldMaxValueIncrementergetNextKey in class AbstractDataFieldMaxValueIncrementerDataAccessExceptionprotected abstract String getIncrementStatement()
protected abstract String getIdentityStatement()
protected String getDeleteStatement(long[] values)
The default implementation either deletes the entire range below
 the current maximum value, or the specifically generated values
 (starting with the lowest minus 1, just preserving the maximum value)
 - according to the isDeleteSpecificValues() setting.
values - the currently generated key values
 (the number of values corresponds to AbstractColumnMaxValueIncrementer.getCacheSize())