# Hierarchy For All Packages

Package Hierarchies:

- org.springframework.jdbc,
- org.springframework.jdbc.config,
- org.springframework.jdbc.core,
- org.springframework.jdbc.core.metadata,
- org.springframework.jdbc.core.namedparam,
- org.springframework.jdbc.core.simple,
- org.springframework.jdbc.core.support,
- org.springframework.jdbc.datasource,
- org.springframework.jdbc.datasource.embedded,
- org.springframework.jdbc.datasource.init,
- org.springframework.jdbc.datasource.lookup,
- org.springframework.jdbc.object,
- org.springframework.jdbc.support,
- org.springframework.jdbc.support.incrementer,
- org.springframework.jdbc.support.lob,
- org.springframework.jdbc.support.rowset,
- org.springframework.jdbc.support.xml

## Class Hierarchy

- java.lang.Object
  - org.springframework.jdbc.support.incrementer.AbstractDataFieldMaxValueIncrementer (implements org.springframework.jdbc.support.incrementer.DataFieldMaxValueIncrementer, org.springframework.beans.factory.InitializingBean)
    - org.springframework.jdbc.support.incrementer.AbstractColumnMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.AbstractIdentityColumnMaxValueIncrementer
        - org.springframework.jdbc.support.incrementer.DerbyMaxValueIncrementer
        - org.springframework.jdbc.support.incrementer.HsqlMaxValueIncrementer
        - org.springframework.jdbc.support.incrementer.MySQLIdentityColumnMaxValueIncrementer
        - org.springframework.jdbc.support.incrementer.SqlServerMaxValueIncrementer
        - org.springframework.jdbc.support.incrementer.SybaseMaxValueIncrementer
          - org.springframework.jdbc.support.incrementer.SybaseAnywhereMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.MySQLMaxValueIncrementer
    - org.springframework.jdbc.support.incrementer.AbstractSequenceMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.Db2LuwMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.Db2MainframeMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.H2SequenceMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.HanaSequenceMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.HsqlSequenceMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.MariaDBSequenceMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.OracleSequenceMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.PostgresSequenceMaxValueIncrementer
      - org.springframework.jdbc.support.incrementer.SqlServerSequenceMaxValueIncrementer
  - org.springframework.jdbc.datasource.AbstractDataSource (implements javax.sql.DataSource)
    - org.springframework.jdbc.datasource.AbstractDriverBasedDataSource
      - org.springframework.jdbc.datasource.DriverManagerDataSource
        - org.springframework.jdbc.datasource.SingleConnectionDataSource (implements java.lang.AutoCloseable, org.springframework.beans.factory.DisposableBean, org.springframework.jdbc.datasource.SmartDataSource)
      - org.springframework.jdbc.datasource.SimpleDriverDataSource
    - org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource (implements org.springframework.beans.factory.InitializingBean)
      - org.springframework.jdbc.datasource.lookup.IsolationLevelDataSourceRouter
  - org.springframework.beans.factory.config.AbstractFactoryBean<T> (implements org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean)
    - org.springframework.jdbc.config.SortedResourcesFactoryBean (implements org.springframework.context.ResourceLoaderAware)
  - org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator (implements org.springframework.jdbc.support.SQLExceptionTranslator)
    - org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator
    - org.springframework.jdbc.support.SQLExceptionSubclassTranslator
    - org.springframework.jdbc.support.SQLStateSQLExceptionTranslator
  - org.springframework.jdbc.core.support.AbstractInterruptibleBatchPreparedStatementSetter (implements org.springframework.jdbc.core.InterruptibleBatchPreparedStatementSetter)
  - org.springframework.jdbc.core.simple.AbstractJdbcCall
    - org.springframework.jdbc.core.simple.SimpleJdbcCall (implements org.springframework.jdbc.core.simple.SimpleJdbcCallOperations)
  - org.springframework.jdbc.core.simple.AbstractJdbcInsert
    - org.springframework.jdbc.core.simple.SimpleJdbcInsert (implements org.springframework.jdbc.core.simple.SimpleJdbcInsertOperations)
  - org.springframework.jdbc.core.support.AbstractLobCreatingPreparedStatementCallback (implements org.springframework.jdbc.core.PreparedStatementCallback<T>)
  - org.springframework.jdbc.support.lob.AbstractLobHandler (implements org.springframework.jdbc.support.lob.LobHandler)
    - org.springframework.jdbc.support.lob.DefaultLobHandler
  - org.springframework.jdbc.core.support.AbstractLobStreamingResultSetExtractor<T> (implements org.springframework.jdbc.core.ResultSetExtractor<T>)
  - org.springframework.transaction.support.AbstractPlatformTransactionManager (implements org.springframework.transaction.ConfigurableTransactionManager, org.springframework.transaction.PlatformTransactionManager, java.io.Serializable)
    - org.springframework.jdbc.datasource.DataSourceTransactionManager (implements org.springframework.beans.factory.InitializingBean, org.springframework.transaction.support.ResourceTransactionManager)
      - org.springframework.jdbc.support.JdbcTransactionManager
  - org.springframework.jdbc.core.namedparam.AbstractSqlParameterSource (implements org.springframework.jdbc.core.namedparam.SqlParameterSource)
    - org.springframework.jdbc.core.namedparam.BeanPropertySqlParameterSource
    - org.springframework.jdbc.core.namedparam.MapSqlParameterSource
    - org.springframework.jdbc.core.namedparam.SimplePropertySqlParameterSource
  - org.springframework.jdbc.core.support.AbstractSqlTypeValue (implements org.springframework.jdbc.core.SqlTypeValue)
  - org.springframework.jdbc.core.ArgumentPreparedStatementSetter (implements org.springframework.jdbc.core.ParameterDisposer, org.springframework.jdbc.core.PreparedStatementSetter)
  - org.springframework.jdbc.core.ArgumentTypePreparedStatementSetter (implements org.springframework.jdbc.core.ParameterDisposer, org.springframework.jdbc.core.PreparedStatementSetter)
  - org.springframework.jdbc.datasource.lookup.BeanFactoryDataSourceLookup (implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.jdbc.datasource.lookup.DataSourceLookup)
  - org.springframework.jdbc.core.BeanPropertyRowMapper<T> (implements org.springframework.jdbc.core.RowMapper<T>)
    - org.springframework.jdbc.core.DataClassRowMapper<T>
  - org.springframework.jdbc.core.CallableStatementCreatorFactory
  - org.springframework.jdbc.core.metadata.CallMetaDataContext
  - org.springframework.jdbc.core.metadata.CallMetaDataProviderFactory
  - org.springframework.jdbc.core.metadata.CallParameterMetaData
  - org.springframework.jdbc.core.ColumnMapRowMapper (implements org.springframework.jdbc.core.RowMapper<T>)
  - org.springframework.jdbc.datasource.init.CompositeDatabasePopulator (implements org.springframework.jdbc.datasource.init.DatabasePopulator)
  - org.springframework.jdbc.support.CustomSQLErrorCodesTranslation
  - org.springframework.jdbc.support.CustomSQLExceptionTranslatorRegistrar (implements org.springframework.beans.factory.InitializingBean)
  - org.springframework.jdbc.support.CustomSQLExceptionTranslatorRegistry
  - org.springframework.dao.support.DaoSupport (implements org.springframework.beans.factory.InitializingBean)
    - org.springframework.jdbc.core.support.JdbcDaoSupport
      - org.springframework.jdbc.core.namedparam.NamedParameterJdbcDaoSupport
  - org.springframework.jdbc.datasource.init.DatabasePopulatorUtils
  - org.springframework.jdbc.support.DatabaseStartupValidator (implements org.springframework.beans.factory.InitializingBean)
  - org.springframework.jdbc.datasource.init.DataSourceInitializer (implements org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean)
  - org.springframework.jdbc.datasource.DataSourceUtils
  - org.springframework.jdbc.support.lob.DefaultLobHandler.DefaultLobCreator (implements org.springframework.jdbc.support.lob.LobCreator)
  - org.springframework.jdbc.datasource.DelegatingDataSource (implements javax.sql.DataSource, org.springframework.beans.factory.InitializingBean)
    - org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy
    - org.springframework.jdbc.datasource.ShardingKeyDataSourceAdapter
    - org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy
    - org.springframework.jdbc.datasource.UserCredentialsDataSourceAdapter
      - org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter
  - org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder
  - org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseConfigurerDelegate
  - org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseConfigurers
  - org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactory
    - org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryBean (implements org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean)
  - org.springframework.jdbc.core.namedparam.EmptySqlParameterSource (implements org.springframework.jdbc.core.namedparam.SqlParameterSource)
  - org.springframework.jdbc.support.GeneratedKeyHolder (implements org.springframework.jdbc.support.KeyHolder)
  - org.springframework.jdbc.core.metadata.GenericCallMetaDataProvider (implements org.springframework.jdbc.core.metadata.CallMetaDataProvider)
    - org.springframework.jdbc.core.metadata.Db2CallMetaDataProvider
    - org.springframework.jdbc.core.metadata.DerbyCallMetaDataProvider
    - org.springframework.jdbc.core.metadata.HanaCallMetaDataProvider
    - org.springframework.jdbc.core.metadata.OracleCallMetaDataProvider
    - org.springframework.jdbc.core.metadata.PostgresCallMetaDataProvider
    - org.springframework.jdbc.core.metadata.SqlServerCallMetaDataProvider
    - org.springframework.jdbc.core.metadata.SybaseCallMetaDataProvider
  - org.springframework.jdbc.core.metadata.GenericTableMetaDataProvider (implements org.springframework.jdbc.core.metadata.TableMetaDataProvider)
    - org.springframework.jdbc.core.metadata.DerbyTableMetaDataProvider
    - org.springframework.jdbc.core.metadata.HsqlTableMetaDataProvider
    - org.springframework.jdbc.core.metadata.OracleTableMetaDataProvider
    - org.springframework.jdbc.core.metadata.PostgresTableMetaDataProvider
  - org.springframework.jdbc.support.xml.Jdbc4SqlXmlHandler (implements org.springframework.jdbc.support.xml.SqlXmlHandler)
  - org.springframework.jdbc.support.JdbcAccessor (implements org.springframework.beans.factory.InitializingBean)
    - org.springframework.jdbc.core.JdbcTemplate (implements org.springframework.jdbc.core.JdbcOperations)
  - org.springframework.jdbc.core.support.JdbcBeanDefinitionReader
  - org.springframework.jdbc.datasource.JdbcTransactionObjectSupport (implements org.springframework.transaction.SavepointManager, org.springframework.transaction.support.SmartTransactionObject)
  - org.springframework.jdbc.support.JdbcUtils
  - org.springframework.jndi.JndiAccessor
    - org.springframework.jndi.JndiLocatorSupport
      - org.springframework.jdbc.datasource.lookup.JndiDataSourceLookup (implements org.springframework.jdbc.datasource.lookup.DataSourceLookup)
  - org.springframework.jdbc.datasource.lookup.MapDataSourceLookup (implements org.springframework.jdbc.datasource.lookup.DataSourceLookup)
  - org.springframework.jdbc.object.MappingSqlQueryWithParameters.RowMapperImpl (implements org.springframework.jdbc.core.RowMapper<T>)
  - org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate (implements org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations)
  - org.springframework.jdbc.core.namedparam.NamedParameterUtils
  - org.springframework.beans.factory.xml.NamespaceHandlerSupport (implements org.springframework.beans.factory.xml.NamespaceHandler)
    - org.springframework.jdbc.config.JdbcNamespaceHandler
  - org.springframework.jdbc.datasource.embedded.OutputStreamFactory
  - org.springframework.jdbc.core.namedparam.ParsedSql
  - org.springframework.jdbc.core.PreparedStatementCreatorFactory
  - org.springframework.jdbc.object.RdbmsOperation (implements org.springframework.beans.factory.InitializingBean)
    - org.springframework.jdbc.object.SqlCall
      - org.springframework.jdbc.object.StoredProcedure
        - org.springframework.jdbc.object.GenericStoredProcedure
    - org.springframework.jdbc.object.SqlOperation
      - org.springframework.jdbc.object.SqlQuery<T>
        - org.springframework.jdbc.object.GenericSqlQuery<T>
        - org.springframework.jdbc.object.MappingSqlQueryWithParameters<T>
          - org.springframework.jdbc.object.MappingSqlQuery<T>
            - org.springframework.jdbc.object.SqlFunction<T>
        - org.springframework.jdbc.object.UpdatableSqlQuery<T>
      - org.springframework.jdbc.object.SqlUpdate
        - org.springframework.jdbc.object.BatchSqlUpdate
  - org.springframework.jdbc.datasource.init.ResourceDatabasePopulator (implements org.springframework.jdbc.datasource.init.DatabasePopulator)
  - org.springframework.transaction.support.ResourceHolderSupport (implements org.springframework.transaction.support.ResourceHolder)
    - org.springframework.jdbc.datasource.ConnectionHolder
  - org.springframework.jdbc.support.rowset.ResultSetWrappingSqlRowSet (implements org.springframework.jdbc.support.rowset.SqlRowSet)
  - org.springframework.jdbc.support.rowset.ResultSetWrappingSqlRowSetMetaData (implements org.springframework.jdbc.support.rowset.SqlRowSetMetaData)
  - org.springframework.jdbc.core.RowCountCallbackHandler (implements org.springframework.jdbc.core.RowCallbackHandler)
  - org.springframework.jdbc.core.RowMapperResultSetExtractor<T> (implements org.springframework.jdbc.core.ResultSetExtractor<T>)
  - org.springframework.jdbc.datasource.init.ScriptUtils
  - org.springframework.jdbc.datasource.SimpleConnectionHandle (implements org.springframework.jdbc.datasource.ConnectionHandle)
  - org.springframework.jdbc.core.SimplePropertyRowMapper<T> (implements org.springframework.jdbc.core.RowMapper<T>)
  - org.springframework.jdbc.core.SingleColumnRowMapper<T> (implements org.springframework.jdbc.core.RowMapper<T>)
  - org.springframework.jdbc.datasource.lookup.SingleDataSourceLookup (implements org.springframework.jdbc.datasource.lookup.DataSourceLookup)
  - org.springframework.jdbc.support.SqlArrayValue (implements org.springframework.jdbc.support.SqlValue)
  - org.springframework.jdbc.core.support.SqlBinaryValue (implements org.springframework.jdbc.core.SqlTypeValue)
  - org.springframework.jdbc.core.support.SqlCharacterValue (implements org.springframework.jdbc.core.SqlTypeValue)
  - org.springframework.jdbc.support.SQLErrorCodes
  - org.springframework.jdbc.support.SQLErrorCodesFactory
  - org.springframework.jdbc.core.support.SqlLobValue (implements org.springframework.jdbc.core.DisposableSqlTypeValue)
  - org.springframework.jdbc.core.SqlParameter
    - org.springframework.jdbc.core.ResultSetSupportingSqlParameter
      - org.springframework.jdbc.core.SqlOutParameter
        - org.springframework.jdbc.core.SqlInOutParameter
      - org.springframework.jdbc.core.SqlReturnResultSet
    - org.springframework.jdbc.core.SqlParameterValue
    - org.springframework.jdbc.core.SqlReturnUpdateCount
  - org.springframework.jdbc.core.namedparam.SqlParameterSourceUtils
  - org.springframework.jdbc.core.SqlRowSetResultSetExtractor (implements org.springframework.jdbc.core.ResultSetExtractor<T>)
  - org.springframework.jdbc.core.StatementCreatorUtils
  - org.springframework.jdbc.core.metadata.TableMetaDataContext
  - org.springframework.jdbc.core.metadata.TableMetaDataProviderFactory
  - org.springframework.jdbc.core.metadata.TableParameterMetaData
  - org.springframework.jdbc.support.lob.TemporaryLobCreator (implements org.springframework.jdbc.support.lob.LobCreator)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - org.springframework.core.NestedCheckedException
        - org.springframework.jdbc.support.MetaDataAccessException
      - java.lang.RuntimeException
        - org.springframework.core.NestedRuntimeException
          - org.springframework.dao.DataAccessException
            - org.springframework.dao.NonTransientDataAccessException
              - org.springframework.dao.DataRetrievalFailureException
                - org.springframework.jdbc.IncorrectResultSetColumnCountException
                - org.springframework.jdbc.LobRetrievalFailureException
              - org.springframework.jdbc.datasource.lookup.DataSourceLookupFailureException
              - org.springframework.dao.InvalidDataAccessApiUsageException
                - org.springframework.jdbc.support.xml.SqlXmlFeatureNotImplementedException
              - org.springframework.dao.InvalidDataAccessResourceUsageException
                - org.springframework.jdbc.BadSqlGrammarException
                - org.springframework.dao.IncorrectUpdateSemanticsDataAccessException
                  - org.springframework.jdbc.JdbcUpdateAffectedIncorrectNumberOfRowsException
                - org.springframework.jdbc.InvalidResultSetAccessException
              - org.springframework.dao.NonTransientDataAccessResourceException
                - org.springframework.dao.DataAccessResourceFailureException
                  - org.springframework.jdbc.CannotGetJdbcConnectionException
              - org.springframework.dao.UncategorizedDataAccessException
                - org.springframework.jdbc.SQLWarningException
                - org.springframework.jdbc.UncategorizedSQLException
            - org.springframework.jdbc.datasource.init.ScriptException
              - org.springframework.jdbc.datasource.init.CannotReadScriptException
              - org.springframework.jdbc.datasource.init.ScriptParseException
              - org.springframework.jdbc.datasource.init.ScriptStatementFailedException
              - org.springframework.jdbc.datasource.init.UncategorizedScriptException
      - java.sql.SQLException (implements java.lang.Iterable<T>)
        - java.sql.BatchUpdateException
          - org.springframework.jdbc.core.AggregatedBatchUpdateException
  - org.springframework.jdbc.object.UpdatableSqlQuery.RowMapperImpl (implements org.springframework.jdbc.core.RowMapper<T>)

## Interface Hierarchy

- java.lang.AutoCloseable
  - java.io.Closeable
    - org.springframework.jdbc.support.lob.LobCreator
  - java.sql.Connection (also extends java.sql.Wrapper)
    - org.springframework.jdbc.datasource.ConnectionProxy
- org.springframework.jdbc.core.BatchPreparedStatementSetter
  - org.springframework.jdbc.core.InterruptibleBatchPreparedStatementSetter
- org.springframework.jdbc.core.CallableStatementCallback<T>
- org.springframework.jdbc.core.CallableStatementCreator
- org.springframework.jdbc.core.metadata.CallMetaDataProvider
- javax.sql.CommonDataSource
  - javax.sql.DataSource (also extends java.sql.Wrapper)
    - org.springframework.jdbc.datasource.embedded.EmbeddedDatabase
    - org.springframework.jdbc.datasource.SmartDataSource
- org.springframework.jdbc.core.ConnectionCallback<T>
- org.springframework.jdbc.datasource.ConnectionHandle
- org.springframework.jdbc.datasource.embedded.ConnectionProperties
- org.springframework.jdbc.support.DatabaseMetaDataCallback<T>
- org.springframework.jdbc.datasource.init.DatabasePopulator
- org.springframework.jdbc.support.incrementer.DataFieldMaxValueIncrementer
- org.springframework.jdbc.datasource.embedded.DataSourceFactory
- org.springframework.jdbc.datasource.lookup.DataSourceLookup
- org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseConfigurer
- org.springframework.jdbc.core.simple.JdbcClient
- org.springframework.jdbc.core.simple.JdbcClient.MappedQuerySpec<T>
- org.springframework.jdbc.core.simple.JdbcClient.ResultQuerySpec
- org.springframework.jdbc.core.simple.JdbcClient.StatementSpec
- org.springframework.jdbc.core.JdbcOperations
- org.springframework.jdbc.support.KeyHolder
- org.springframework.jdbc.support.lob.LobHandler
- org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations
- org.springframework.jdbc.core.ParameterDisposer
- org.springframework.jdbc.core.ParameterizedPreparedStatementSetter<T>
- org.springframework.jdbc.core.ParameterMapper
- org.springframework.jdbc.core.PreparedStatementCallback<T>
- org.springframework.jdbc.core.PreparedStatementCreator
- org.springframework.jdbc.core.PreparedStatementSetter
- org.springframework.jdbc.core.ResultSetExtractor<T>
- org.springframework.jdbc.core.RowCallbackHandler
- org.springframework.jdbc.core.RowMapper<T>
- java.io.Serializable
  - org.springframework.jdbc.support.rowset.SqlRowSet
- org.springframework.jdbc.datasource.ShardingKeyProvider
- org.springframework.jdbc.core.simple.SimpleJdbcCallOperations
- org.springframework.jdbc.core.simple.SimpleJdbcInsertOperations
- org.springframework.jdbc.support.SQLExceptionTranslator
- org.springframework.jdbc.core.namedparam.SqlParameterSource
- org.springframework.jdbc.core.SqlProvider
- org.springframework.jdbc.core.SqlReturnType
- org.springframework.jdbc.support.rowset.SqlRowSetMetaData
- org.springframework.jdbc.core.SqlTypeValue
  - org.springframework.jdbc.core.DisposableSqlTypeValue
- org.springframework.jdbc.support.SqlValue
  - org.springframework.jdbc.support.xml.SqlXmlValue
- org.springframework.jdbc.support.xml.SqlXmlHandler
- org.springframework.jdbc.core.StatementCallback<T>
- org.springframework.jdbc.core.metadata.TableMetaDataProvider
- java.sql.Wrapper
  - java.sql.Connection (also extends java.lang.AutoCloseable)
    - org.springframework.jdbc.datasource.ConnectionProxy
  - javax.sql.DataSource (also extends javax.sql.CommonDataSource)
    - org.springframework.jdbc.datasource.embedded.EmbeddedDatabase
    - org.springframework.jdbc.datasource.SmartDataSource
- org.springframework.jdbc.support.xml.XmlBinaryStreamProvider
- org.springframework.jdbc.support.xml.XmlCharacterStreamProvider
- org.springframework.jdbc.support.xml.XmlResultProvider

## Enum Class Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType