Class DynamicTableSQLProvider

java.lang.Object
com.imyeyu.spring.util.BaseSQLProvider
com.imyeyu.spring.util.DynamicTableSQLProvider

public class DynamicTableSQLProvider extends BaseSQLProvider
支持动态表名的 SQL 提供器

继承自 BaseSQLProvider,为 DynamicTableMapper 提供适配层

Since:
2026-01-07 11:10
Author:
夜雨
  • Constructor Details

    • DynamicTableSQLProvider

      public DynamicTableSQLProvider()
  • Method Details

    • selectByPage

      public String selectByPage(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("page") Page<?> page)
      根据 Page 对象查询数据列表
      Parameters:
      context - 代理器上下文
      tableName - 表名
      page - 分页参数
      Returns:
      SQL
    • countByPage

      public String countByPage(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("page") Page<?> page)
      根据 Page 对象统计数据量
      Parameters:
      context - 代理器上下文
      tableName - 表名
      page - 分页参数
      Returns:
      SQL
    • selectAll

      public String selectAll(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName)
      查询全部数据
      Parameters:
      context - 代理器上下文
      tableName - 表名
      Returns:
      SQL
    • insert

      public String insert(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("entity") Object entity)
      插入
      Parameters:
      context - 代理器上下文
      tableName - 表名
      entity - 实体
      Returns:
      SQL
    • select

      public String select(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("id") Object id)
      根据 ID 查询
      Parameters:
      context - 代理器上下文
      tableName - 表名
      id - ID
      Returns:
      SQL
    • selectByExample

      public String selectByExample(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("entity") Object entity, @Param("logic") Logic logic)
      根据实体非空字段使用等号查询
      Parameters:
      context - 代理器上下文
      tableName - 表名
      entity - 实体
      logic - 条件连接逻辑
      Returns:
      SQL
    • selectAllByExample

      public String selectAllByExample(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("entity") Object entity, @Param("logic") Logic logic)
      根据实体非空字段使用等号查询
      Parameters:
      context - 代理器上下文
      tableName - 表名
      entity - 实体
      logic - 条件连接逻辑
      Returns:
      SQL
    • update

      public String update(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("entity") Object entity)
      根据 ID 更新
      Parameters:
      context - 代理器上下文
      tableName - 表名
      entity - 实体
      Returns:
      SQL
    • updateSelective

      public String updateSelective(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("entity") Object entity)
      根据 ID 更新,选择性更新非空属性
      Parameters:
      context - 代理器上下文
      tableName - 表名
      entity - 实体
      Returns:
      SQL
    • delete

      public String delete(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("id") Object id)
      根据 ID 软删除
      Parameters:
      context - 代理器上下文
      tableName - 表名
      id - ID
      Returns:
      SQL
    • deleteAllByExample

      public String deleteAllByExample(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("entity") Object entity, @Param("logic") Logic logic)
      根据示例批量逻辑删除
      Parameters:
      context - 代理器上下文
      tableName - 表名
      entity - 实体
      logic - 条件连接逻辑
      Returns:
      SQL
    • destroy

      public String destroy(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("id") Object id)
      硬删除
      Parameters:
      context - 代理器上下文
      tableName - 表名
      id - ID
      Returns:
      SQL
    • destroyAllByExample

      public String destroyAllByExample(org.apache.ibatis.builder.annotation.ProviderContext context, @Param("tableName") String tableName, @Param("entity") Object entity, @Param("logic") Logic logic)
      根据示例批量物理删除
      Parameters:
      context - 代理器上下文
      tableName - 表名
      entity - 实体
      logic - 条件连接逻辑
      Returns:
      SQL