Class MapperTemplate

java.lang.Object
org.miaixz.bus.mapper.builder.MapperTemplate
Direct Known Subclasses:
AggregationProvider, BasicDeleteProvider, BasicInsertProvider, BasicSelectProvider, BasicUpdateProvider, BatchUpdateProvider, BatchUpsertProvider, ConditionProvider, DeletePropertyProvider, EmptyProvider, IdListProvider, IdsProvider, InsertListProvider, OracleProvider, SaveProvider, SelectPropertyProvider, SpecialProvider, SqlServerProvider, UpdateByDifferProvider, UpdateByPrimaryKeySelectiveForceProvider, UpsertProvider

public abstract class MapperTemplate extends Object
通用Mapper模板类,扩展通用Mapper时需要继承该类
Since:
Java 17+
Author:
Kimi Liu
  • Field Details

  • Constructor Details

    • MapperTemplate

      public MapperTemplate(Class<?> mapperClass, MapperBuilder mapperBuilder)
  • Method Details

    • dynamicSQL

      public String dynamicSQL(Object record)
      该方法仅仅用来初始化ProviderSqlSource
      Parameters:
      record - 记录值
      Returns:
      the string
    • addMethodMap

      public void addMethodMap(String methodName, Method method)
      添加映射方法
      Parameters:
      methodName - 方法名
      method - 方法
    • getIDENTITY

      public String getIDENTITY(EntityColumn column)
      获取IDENTITY值的表达式
      Parameters:
      column - 列
      Returns:
      the string
    • supportMethod

      public boolean supportMethod(String msId)
      是否支持该通用方法
      Parameters:
      msId - 方法
      Returns:
      the boolean
    • setResultType

      protected void setResultType(org.apache.ibatis.mapping.MappedStatement ms, Class<?> entityClass)
      设置返回值类型 - 为了让typeHandler在select时有效,改为设置resultMap
      Parameters:
      ms - MappedStatement
      entityClass - 实体Class对象
    • setSqlSource

      protected void setSqlSource(org.apache.ibatis.mapping.MappedStatement ms, org.apache.ibatis.mapping.SqlSource sqlSource)
      重新设置SqlSource
      Parameters:
      ms - MappedStatement
      sqlSource - sql
    • createSqlSource

      public org.apache.ibatis.mapping.SqlSource createSqlSource(org.apache.ibatis.mapping.MappedStatement ms, String xmlSql)
      通过xmlSql创建sqlSource
      Parameters:
      ms - MappedStatement
      xmlSql - XM信息
      Returns:
      the object
    • getEntityClass

      public Class<?> getEntityClass(org.apache.ibatis.mapping.MappedStatement ms)
      获取返回值类型 - 实体类型
      Parameters:
      ms - MappedStatement
      Returns:
      the class
    • tableName

      protected String tableName(Class<?> entityClass)
      获取实体类的表名
      Parameters:
      entityClass - 实体Class对象
      Returns:
      the string
    • getConfig

      public Property getConfig()
    • getIDENTITY

      public String getIDENTITY()
    • isBEFORE

      public boolean isBEFORE()
    • isCheckConditionEntityClass

      public boolean isCheckConditionEntityClass()
    • isNotEmpty

      public boolean isNotEmpty()
    • setSqlSource

      public void setSqlSource(org.apache.ibatis.mapping.MappedStatement ms)
      重新设置SqlSource
      Parameters:
      ms - MappedStatement