org.springframework.jdbc.support.incrementer

## Class AbstractColumnMaxValueIncrementer

- java.lang.Object
- - org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer
  - - org.springframework.jdbc.support.incrementer.AbstractColumnMaxValueIncrementer

- All Implemented Interfaces:
    InitializingBean, DataFieldMaxValueIncrementer
  Direct Known Subclasses:
    AbstractIdentityColumnMaxValueIncrementer, MySQLMaxValueIncrementer

      public abstract class AbstractColumnMaxValueIncrementer
      extends AbstractDataFieldMaxValueIncrementer

  Abstract base class for `DataFieldMaxValueIncrementer` implementations that use a column in a custom sequence table. Subclasses need to provide the specific handling of that table in their `AbstractDataFieldMaxValueIncrementer.getNextKey()` implementation.
  Since:
    2.5.3
  Author:
    Juergen Hoeller

- - ### Field Summary

    - ### Fields inherited from class org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer

      `paddingLength`

  - ### Constructor Summary

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

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `afterPropertiesSet()` Invoked by the containing `BeanFactory` after it has set all bean properties and satisfied `BeanFactoryAware`, `ApplicationContextAware` etc.
    `int` | `getCacheSize()` Return the number of buffered keys.
    `String` | `getColumnName()` Return the name of the column in the sequence table.
    `void` | `setCacheSize(int cacheSize)` Set the number of buffered keys.
    `void` | `setColumnName(String columnName)` Set the name of the column in the sequence table.

    - ### Methods inherited from class org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer

      `getDataSource, getIncrementerName, getNextKey, 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

    - #### AbstractColumnMaxValueIncrementer

          public AbstractColumnMaxValueIncrementer()

      Default constructor for bean property style usage.
      See Also:
        `AbstractDataFieldMaxValueIncrementer.setDataSource(javax.sql.DataSource)`, `AbstractDataFieldMaxValueIncrementer.setIncrementerName(java.lang.String)`, `setColumnName(java.lang.String)`

    - #### AbstractColumnMaxValueIncrementer

          public AbstractColumnMaxValueIncrementer(DataSource dataSource,
                                                   String incrementerName,
                                                   String columnName)

      Convenience 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 Detail

    - #### setColumnName

          public void setColumnName(String columnName)

      Set the name of the column in the sequence table.

    - #### getColumnName

          public String getColumnName()

      Return the name of the column in the sequence table.

    - #### setCacheSize

          public void setCacheSize(int cacheSize)

      Set the number of buffered keys.

    - #### getCacheSize

          public int getCacheSize()

      Return the number of buffered keys.

    - #### afterPropertiesSet

          public void afterPropertiesSet()

      Description copied from interface: `InitializingBean`
      Invoked by the containing `BeanFactory` after it has set all bean properties and satisfied `BeanFactoryAware`, `ApplicationContextAware` etc.

      This method allows the bean instance to perform validation of its overall configuration and final initialization when all bean properties have been set.

      Specified by:
        `afterPropertiesSet` in interface `InitializingBean`
      Overrides:
        `afterPropertiesSet` in class `AbstractDataFieldMaxValueIncrementer`