Class Template<T>

java.lang.Object
org.wso2.carbon.database.utils.jdbc.Template<T>
Type Parameters:
T - defines the input data type.

public class Template<T> extends Object
This class is created to have Template which containing the methods for the database transactions.
  • Constructor Details

    • Template

      public Template()
  • Method Details

    • executeInsert

      public <T> int executeInsert(String query, QueryFilter queryFilter, T bean, boolean fetchInsertedId) throws DataAccessException
      Type Parameters:
      T - return type of the object.
      Parameters:
      query - The SQL for insert/update.
      queryFilter - Query filter to prepared statement parameter binding.
      bean - the Domain object to be inserted/updated.
      fetchInsertedId - the boolean value to get the inserted id.
      Throws:
      DataAccessException
    • executeBatchInsert

      public <T> int executeBatchInsert(String query, QueryFilter queryFilter, T bean) throws DataAccessException
      Executes the jdbc insert/update query.
      Parameters:
      query - The SQL for insert/update.
      queryFilter - Query filter to prepared statement parameter binding.
      bean - the Domain object to be inserted/updated.
      Throws:
      DataAccessException
    • executeQuery

      public <T> List<T> executeQuery(String query, RowMapper<T> rowMapper) throws DataAccessException
      Executes a query on JDBC and return the result as a list of domain objects.
      Parameters:
      query - the SQL query with the parameter placeholders.
      rowMapper - Row mapper functional interface.
      Returns:
      List of domain objects of required type.
      Throws:
      DataAccessException
      See Also:
    • executeQuery

      public <T> List<T> executeQuery(String query, RowMapper<T> rowMapper, QueryFilter queryFilter) throws DataAccessException
      Executes a query on JDBC and return the result as a list of domain objects.
      Parameters:
      query - the SQL query with the parameter placeholders.
      rowMapper - Row mapper functional interface.
      queryFilter - parameters for the SQL query parameter replacement.
      Returns:
      List of domain objects of required type.
      Throws:
      DataAccessException
    • fetchSingleRecord

      public <T> T fetchSingleRecord(String query, RowMapper<T> rowMapper, QueryFilter queryFilter) throws DataAccessException
      Executes a query on JDBC and return the result as a domain object.
      Parameters:
      query - the SQL query with the parameter placeholders.
      rowMapper - Row mapper functional interface.
      queryFilter - parameters for the SQL query parameter replacement.
      Returns:
      domain object of required type.
      Throws:
      DataAccessException
    • executeUpdate

      public void executeUpdate(String query, QueryFilter queryFilter) throws DataAccessException
      Executes the jdbc update query and returns nothing.
      Parameters:
      query - SQL query with the parameter placeholders.
      queryFilter - parameters for the SQL query parameter replacement.
      Throws:
      DataAccessException
    • executeUpdateWithAffectedRows

      public int executeUpdateWithAffectedRows(String query, QueryFilter queryFilter) throws DataAccessException
      Executes the jdbc update query and returns number of affected rows.
      Parameters:
      query - SQL query with the parameter placeholders.
      queryFilter - parameters for the SQL query parameter replacement.
      Returns:
      number of rows affected.
      Throws:
      DataAccessException
    • executeUpdate

      public int executeUpdate(String query) throws DataAccessException
      Executes the jdbc update query and returns the result as updated id integer.
      Parameters:
      query - the SQL query with the parameter placeholders.
      Returns:
      the updated id.
      Throws:
      DataAccessException