Class HsqlMaxValueIncrementer
java.lang.Object
org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer
org.springframework.jdbc.support.incrementer.AbstractColumnMaxValueIncrementer
org.springframework.jdbc.support.incrementer.AbstractIdentityColumnMaxValueIncrementer
org.springframework.jdbc.support.incrementer.HsqlMaxValueIncrementer
- All Implemented Interfaces:
- InitializingBean,- DataFieldMaxValueIncrementer
DataFieldMaxValueIncrementer that increments the maximum value of a given HSQL table
 with the equivalent of an auto-increment column. Note: If you use this class, your HSQL
 key column should NOT be auto-increment, as the sequence table does the job.
 The sequence is kept in a table. There should be one sequence table per table that needs an auto-generated key.
Example:
create table tab (id int not null primary key, text varchar(100)); create table tab_sequence (value identity); insert into tab_sequence values(0);If "cacheSize" is set, the intermediate values are served without querying the database. If the server or your application is stopped or crashes or a transaction is rolled back, the unused values will never be served. The maximum hole size in numbering is consequently the value of cacheSize.
NOTE: HSQL now supports sequences and you should consider using them instead:
 HsqlSequenceMaxValueIncrementer
- Author:
- Jean-Pierre Pawlak, Thomas Risberg, Juergen Hoeller
- See Also:
- 
Field SummaryFields inherited from class org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementerpaddingLength
- 
Constructor SummaryConstructorsConstructorDescriptionDefault constructor for bean property style usage.HsqlMaxValueIncrementer(DataSource dataSource, String incrementerName, String columnName) Convenience constructor.
- 
Method SummaryMethods inherited from class org.springframework.jdbc.support.incrementer.AbstractIdentityColumnMaxValueIncrementergetDeleteStatement, getNextKey, isDeleteSpecificValues, setDeleteSpecificValuesMethods inherited from class org.springframework.jdbc.support.incrementer.AbstractColumnMaxValueIncrementerafterPropertiesSet, getCacheSize, getColumnName, setCacheSize, setColumnNameMethods inherited from class org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementergetDataSource, getIncrementerName, getPaddingLength, nextIntValue, nextLongValue, nextStringValue, setDataSource, setIncrementerName, setPaddingLength
- 
Constructor Details- 
HsqlMaxValueIncrementerpublic HsqlMaxValueIncrementer()Default constructor for bean property style usage.
- 
HsqlMaxValueIncrementerConvenience constructor.- Parameters:
- dataSource- the DataSource to use
- incrementerName- the name of the sequence/table to use
- columnName- the name of the column in the sequence table to use
 
 
- 
- 
Method Details- 
getIncrementStatementDescription copied from class:AbstractIdentityColumnMaxValueIncrementerStatement to use to increment the "sequence" value.- Specified by:
- getIncrementStatementin class- AbstractIdentityColumnMaxValueIncrementer
- Returns:
- the SQL statement to use
 
- 
getIdentityStatementDescription copied from class:AbstractIdentityColumnMaxValueIncrementerStatement to use to obtain the current identity value.- Specified by:
- getIdentityStatementin class- AbstractIdentityColumnMaxValueIncrementer
- Returns:
- the SQL statement to use
 
 
-