Interface JdbcOperations

All Known Implementing Classes:
SimpleJdbcTemplate

public interface JdbcOperations
JdbcOperations

定义 JdbcTemplate 的 API

Since:
1.0.0
Author:
ZhouXY
  • Method Details

    • query

      <T> T query(String sql, Object[] params, ResultHandler<T> resultHandler) throws SQLException
      执行查询,并按照自定义处理逻辑对结果进行处理,将结果转换为指定类型并返回
      Type Parameters:
      T - 返回结果类型
      Parameters:
      sql - SQL
      params - 参数
      resultHandler - 结果处理器,用于处理 ResultSet
      Returns:
      查询结果
      Throws:
      SQLException - SQL异常
    • query

      default <T> T query(String sql, ResultHandler<T> resultHandler) throws SQLException
      执行查询,并按照自定义处理逻辑对结果进行处理,将结果转换为指定类型并返回
      Type Parameters:
      T - 返回结果类型
      Parameters:
      sql - SQL
      resultHandler - 结果处理器,用于处理 ResultSet
      Returns:
      查询结果
      Throws:
      SQLException - SQL异常
    • queryList

      <T> List<T> queryList(String sql, Object[] params, RowMapper<T> rowMapper) throws SQLException
      执行查询,将查询结果的每一行数据按照指定逻辑进行处理,返回结果列表
      Type Parameters:
      T - 返回结果列表中每一行数据的类型
      Parameters:
      sql - SQL
      params - 参数
      rowMapper - ResultSet 中每一行的数据的处理逻辑
      Returns:
      查询结果列表
      Throws:
      SQLException - SQL 异常
    • queryList

      <T> List<T> queryList(String sql, Object[] params, Class<T> clazz) throws SQLException
      执行查询,返回结果映射为指定的类型。当结果为单列时使用
      Type Parameters:
      T - 目标类型
      Parameters:
      sql - SQL
      params - 参数
      clazz - 目标类型
      Returns:
      映射结果。如果查询结果为空,则返回空列表
      Throws:
      SQLException - SQL异常
    • queryList

      List<Map<String,Object>> queryList(String sql, Object[] params) throws SQLException
      执行查询,每一行数据映射为 Map<String, Object>,返回结果列表
      Parameters:
      sql - SQL
      params - 参数列表
      Returns:
      结果列表
      Throws:
      SQLException - SQL 异常
    • queryList

      default <T> List<T> queryList(String sql, RowMapper<T> rowMapper) throws SQLException
      执行查询,将查询结果的每一行数据按照指定逻辑进行处理,返回结果列表
      Type Parameters:
      T - 目标类型
      Parameters:
      sql - SQL
      rowMapper - ResultSet 中每一行的数据的处理逻辑
      Returns:
      结果列表
      Throws:
      SQLException - SQL 异常
    • queryList

      default <T> List<T> queryList(String sql, Class<T> clazz) throws SQLException
      执行查询,返回结果映射为指定的类型。当结果为单列时使用
      Type Parameters:
      T - 目标类型
      Parameters:
      sql - SQL
      clazz - 将结果映射为指定的类型
      Returns:
      查询结果
      Throws:
      SQLException - SQL 异常
    • queryList

      default List<Map<String,Object>> queryList(String sql) throws SQLException
      执行查询,每一行数据映射为 Map<String, Object>,返回结果列表
      Parameters:
      sql - SQL
      Returns:
      结果列表
      Throws:
      SQLException - SQL 异常
    • queryFirst

      <T> Optional<T> queryFirst(String sql, Object[] params, RowMapper<T> rowMapper) throws SQLException
      执行查询,将查询结果的第一行数据按照指定逻辑进行处理,返回 Optional
      Type Parameters:
      T - 目标类型
      Parameters:
      sql - SQL
      params - 参数
      rowMapper - ResultSet 中每一行的数据的处理逻辑
      Returns:
      查询结果
      Throws:
      SQLException - SQL 异常
    • queryFirst

      <T> Optional<T> queryFirst(String sql, Object[] params, Class<T> clazz) throws SQLException
      查询第一行第一列,并转换为指定类型
      Type Parameters:
      T - 目标类型
      Parameters:
      sql - SQL
      params - 参数
      clazz - 目标类型
      Returns:
      查询结果
      Throws:
      SQLException - SQL 异常
    • queryFirst

      Optional<Map<String,Object>> queryFirst(String sql, Object[] params) throws SQLException
      执行查询,将第一行数据转为 Map<String, Object>
      Parameters:
      sql - SQL
      params - 参数
      Returns:
      查询结果
      Throws:
      SQLException - SQL 异常
    • queryFirst

      default <T> Optional<T> queryFirst(String sql, RowMapper<T> rowMapper) throws SQLException
      执行查询,将查询结果的第一行数据按照指定逻辑进行处理,返回 Optional
      Type Parameters:
      T - 目标类型
      Parameters:
      sql - SQL
      rowMapper - ResultSet 中每一行的数据的处理逻辑
      Returns:
      查询结果
      Throws:
      SQLException - SQL 异常
    • queryFirst

      default <T> Optional<T> queryFirst(String sql, Class<T> clazz) throws SQLException
      查询第一行第一列,并转换为指定类型
      Type Parameters:
      T - 目标类型
      Parameters:
      sql - SQL
      clazz - 目标类型
      Returns:
      第一行第一列的值,如果查询结果为空,则返回 Optional#empty()
      Throws:
      SQLException - SQL 异常
    • queryFirst

      default Optional<Map<String,Object>> queryFirst(String sql) throws SQLException
      执行查询,将第一行数据转为 Map<String, Object>
      Parameters:
      sql - SQL
      Returns:
      查询结果
      Throws:
      SQLException - SQL 异常
    • queryBoolean

      default boolean queryBoolean(String sql) throws SQLException
      查询第一行第一列并转换为 boolean
      Parameters:
      sql - SQL
      Returns:
      查询结果。如果查询结果为空,则返回 false
      Throws:
      SQLException - SQL 异常
    • queryBoolean

      boolean queryBoolean(String sql, Object[] params) throws SQLException
      查询第一行第一列并转换为 boolean
      Parameters:
      sql - SQL
      params - 参数
      Returns:
      查询结果。如果查询结果为空,则返回 false
      Throws:
      SQLException - SQL 异常
    • update

      int update(String sql, Object[] params) throws SQLException
      执行更新操作
      Parameters:
      sql - 要执行的 SQL
      params - 参数
      Returns:
      更新记录数
      Throws:
      SQLException - SQL 异常
    • update

      default int update(String sql) throws SQLException
      执行更新操作
      Parameters:
      sql - 要执行的 SQL
      Returns:
      更新记录数
      Throws:
      SQLException - 数据库执行异常
    • updateAndReturnKeys

      <T> List<T> updateAndReturnKeys(String sql, Object[] params, RowMapper<T> rowMapper) throws SQLException
      执行 SQL 并返回生成的 keys
      Type Parameters:
      T - 映射结果类型
      Parameters:
      sql - 要执行的 SQL
      params - 参数
      rowMapper - 行数据映射逻辑
      Returns:
      generated keys
      Throws:
      SQLException - 数据库执行异常
    • updateAndReturnKeys

      default <T> List<T> updateAndReturnKeys(String sql, RowMapper<T> rowMapper) throws SQLException
      执行 SQL 并返回生成的 keys
      Type Parameters:
      T - 映射结果类型
      Parameters:
      sql - 要执行的 SQL
      rowMapper - 行数据映射逻辑
      Returns:
      generated keys
      Throws:
      SQLException - 数据库执行异常
    • batchUpdate

      BatchUpdateResult batchUpdate(String sql, @Nullable Collection<Object[]> params, int batchSize) throws SQLException
      批量更新

      跑批过程中发生异常即中断操作,并返回结果。

      当无法获取所更新的行数时,对应位置的更新行数将被设置为 JdbcOperationSupport.UNKNOWN_COUNT

      Parameters:
      sql - SQL 语句
      params - 参数列表
      batchSize - 每次批量更新的数据量
      Returns:
      批量更新的结果
      Throws:
      SQLException - SQL 异常
    • batchUpdate

      BatchUpdateResult batchUpdate(String sql, @Nullable Collection<Object[]> params, int batchSize, boolean quietly) throws SQLException
      批量更新

      当无法获取所更新的行数时,对应位置的更新行数将被设置为 JdbcOperationSupport.UNKNOWN_COUNT

      Parameters:
      sql - sql语句
      params - 参数列表
      batchSize - 每次批量更新的数据量
      quietly - 静默分批更新。 如果 quietlytrue,分批更新过程中发生异常不中断操作; 如果 quietlyfalse,分批更新过程中发生异常即中断操作,并返回结果。
      Returns:
      批次更新结果
      Throws:
      SQLException - 数据库执行异常