Interface SimpleJdbcInsertOperations

  • All Known Implementing Classes:
    SimpleJdbcInsert

    public interface SimpleJdbcInsertOperations
    Interface specifying the API for a Simple JDBC Insert implemented by SimpleJdbcInsert. This interface is not often used directly, but provides the option to enhance testability, as it can easily be mocked or stubbed.
    Since:
    2.5
    Author:
    Thomas Risberg
    • Method Detail

      • withCatalogName

        SimpleJdbcInsertOperations withCatalogName​(String catalogName)
        Specify the catalog name, if any, to be used for the insert.
        Parameters:
        catalogName - the name of the catalog
        Returns:
        the instance of this SimpleJdbcInsert
      • usingColumns

        SimpleJdbcInsertOperations usingColumns​(String... columnNames)
        Specify the column names that the insert statement should be limited to use.
        Parameters:
        columnNames - one or more column names
        Returns:
        the instance of this SimpleJdbcInsert
      • includeSynonymsForTableColumnMetaData

        SimpleJdbcInsertOperations includeSynonymsForTableColumnMetaData()
        Include synonyms for the column meta-data lookups via JDBC.

        Note: This is only necessary to include for Oracle since other databases supporting synonyms seems to include the synonyms automatically.

        Returns:
        the instance of this SimpleJdbcInsert
      • execute

        int execute​(Map<String,​?> args)
        Execute the insert using the values passed in.
        Parameters:
        args - a Map containing column names and corresponding value
        Returns:
        the number of rows affected as returned by the JDBC driver
      • execute

        int execute​(SqlParameterSource parameterSource)
        Execute the insert using the values passed in.
        Parameters:
        parameterSource - the SqlParameterSource containing values to use for insert
        Returns:
        the number of rows affected as returned by the JDBC driver
      • executeAndReturnKey

        Number executeAndReturnKey​(Map<String,​?> args)
        Execute the insert using the values passed in and return the generated key.

        This requires that the name of the columns with auto generated keys have been specified. This method will always return a KeyHolder but the caller must verify that it actually contains the generated keys.

        Parameters:
        args - a Map containing column names and corresponding value
        Returns:
        the generated key value
      • executeAndReturnKey

        Number executeAndReturnKey​(SqlParameterSource parameterSource)
        Execute the insert using the values passed in and return the generated key.

        This requires that the name of the columns with auto generated keys have been specified. This method will always return a KeyHolder but the caller must verify that it actually contains the generated keys.

        Parameters:
        parameterSource - the SqlParameterSource containing values to use for insert
        Returns:
        the generated key value.
      • executeAndReturnKeyHolder

        KeyHolder executeAndReturnKeyHolder​(Map<String,​?> args)
        Execute the insert using the values passed in and return the generated keys.

        This requires that the name of the columns with auto generated keys have been specified. This method will always return a KeyHolder but the caller must verify that it actually contains the generated keys.

        Parameters:
        args - a Map containing column names and corresponding value
        Returns:
        the KeyHolder containing all generated keys
      • executeAndReturnKeyHolder

        KeyHolder executeAndReturnKeyHolder​(SqlParameterSource parameterSource)
        Execute the insert using the values passed in and return the generated keys.

        This requires that the name of the columns with auto generated keys have been specified. This method will always return a KeyHolder but the caller must verify that it actually contains the generated keys.

        Parameters:
        parameterSource - the SqlParameterSource containing values to use for insert
        Returns:
        the KeyHolder containing all generated keys
      • executeBatch

        int[] executeBatch​(Map<String,​?>... batch)
        Execute a batch insert using the batch of values passed in.
        Parameters:
        batch - an array of Maps containing a batch of column names and corresponding value
        Returns:
        the array of number of rows affected as returned by the JDBC driver
      • executeBatch

        int[] executeBatch​(SqlParameterSource... batch)
        Execute a batch insert using the batch of values passed in.
        Parameters:
        batch - an array of SqlParameterSource containing values for the batch
        Returns:
        the array of number of rows affected as returned by the JDBC driver