org.springframework.jdbc.support.incrementer
Class PostgreSQLSequenceMaxValueIncrementer

java.lang.Object
  extended by org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer
      extended by org.springframework.jdbc.support.incrementer.AbstractSequenceMaxValueIncrementer
          extended by org.springframework.jdbc.support.incrementer.PostgreSQLSequenceMaxValueIncrementer
All Implemented Interfaces:
InitializingBean, DataFieldMaxValueIncrementer

public class PostgreSQLSequenceMaxValueIncrementer
extends AbstractSequenceMaxValueIncrementer

DataFieldMaxValueIncrementer that retrieves the next value of a given PostgreSQL sequence. Thanks to Tomislav Urban for the suggestion!

Author:
Juergen Hoeller

Field Summary
 
Fields inherited from class org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer
paddingLength
 
Constructor Summary
PostgreSQLSequenceMaxValueIncrementer()
          Default constructor for bean property style usage.
PostgreSQLSequenceMaxValueIncrementer(DataSource dataSource, String incrementerName)
          Convenience constructor.
 
Method Summary
protected  String getSequenceQuery()
          Return the database-specific query to use for retrieving a sequence value.
 
Methods inherited from class org.springframework.jdbc.support.incrementer.AbstractSequenceMaxValueIncrementer
getNextKey
 
Methods inherited from class org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer
afterPropertiesSet, getDataSource, getIncrementerName, getPaddingLength, nextIntValue, nextLongValue, nextStringValue, setDataSource, setIncrementerName, setPaddingLength
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PostgreSQLSequenceMaxValueIncrementer

public PostgreSQLSequenceMaxValueIncrementer()
Default constructor for bean property style usage.

See Also:
AbstractDataFieldMaxValueIncrementer.setDataSource(javax.sql.DataSource), AbstractDataFieldMaxValueIncrementer.setIncrementerName(java.lang.String)

PostgreSQLSequenceMaxValueIncrementer

public PostgreSQLSequenceMaxValueIncrementer(DataSource dataSource,
                                             String incrementerName)
Convenience constructor.

Parameters:
dataSource - the DataSource to use
incrementerName - the name of the sequence/table to use
Method Detail

getSequenceQuery

protected String getSequenceQuery()
Description copied from class: AbstractSequenceMaxValueIncrementer
Return the database-specific query to use for retrieving a sequence value.

The provided SQL is supposed to result in a single row with a single column that allows for extracting a long value.

Specified by:
getSequenceQuery in class AbstractSequenceMaxValueIncrementer