org.springframework.jdbc.support.incrementer

## Class PostgreSQLSequenceMaxValueIncrementer

- java.lang.Object
- - org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer
  - - org.springframework.jdbc.support.incrementer.AbstractSequenceMaxValueIncrementer
    - - 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

Constructors
Constructor and Description
`PostgreSQLSequenceMaxValueIncrementer()` Default constructor for bean property style usage.
`PostgreSQLSequenceMaxValueIncrementer(DataSource dataSource, String incrementerName)` Convenience constructor.

### Method Summary

Methods
`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`