public abstract class MapperTemplate extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
protected Map<String,Class<?>> |
entityClassMap |
protected Class<?> |
mapperClass |
protected MapperHelper |
mapperHelper |
protected Map<String,Method> |
methodMap |
| 构造器和说明 |
|---|
MapperTemplate(Class<?> mapperClass,
MapperHelper mapperHelper) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
addMethodMap(String methodName,
Method method)
添加映射方法
|
org.apache.ibatis.mapping.SqlSource |
createSqlSource(org.apache.ibatis.mapping.MappedStatement ms,
String xmlSql)
通过xmlSql创建sqlSource
|
String |
dynamicSQL(Object record)
该方法仅仅用来初始化ProviderSqlSource
|
org.apache.ibatis.scripting.xmltags.IfSqlNode |
ExampleValidSqlNode(org.apache.ibatis.session.Configuration configuration)
已过时。
|
org.apache.ibatis.scripting.xmltags.WhereSqlNode |
exampleWhereClause(org.apache.ibatis.session.Configuration configuration)
已过时。
4.x版本会移除该方法
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getAllIfColumnNode(Class<?> entityClass)
已过时。
4.x版本会移除该方法
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getColumnEqualsProperty(EntityColumn column,
boolean first)
已过时。
4.x版本会移除该方法
|
protected List<org.apache.ibatis.mapping.ParameterMapping> |
getColumnParameterMappings(org.apache.ibatis.mapping.MappedStatement ms)
已过时。
4.x版本会移除该方法
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getDynamicTableNameNode(Class<?> entityClass)
已过时。
4.x版本会移除该方法
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getDynamicTableNameNode(Class<?> entityClass,
String parameterName)
已过时。
4.x版本会移除该方法
|
Class<?> |
getEntityClass(org.apache.ibatis.mapping.MappedStatement ms)
获取返回值类型 - 实体类型
|
String |
getIDENTITY() |
String |
getIDENTITY(EntityColumn column)
获取IDENTITY值的表达式
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getIfCacheIsNull(EntityColumn column,
org.apache.ibatis.scripting.xmltags.SqlNode columnNode)
已过时。
4.x版本会移除该方法
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getIfCacheNotNull(EntityColumn column,
org.apache.ibatis.scripting.xmltags.SqlNode columnNode)
已过时。
4.x版本会移除该方法
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getIfIsNull(EntityColumn column,
org.apache.ibatis.scripting.xmltags.SqlNode columnNode)
已过时。
4.x版本会移除该方法
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getIfNotNull(EntityColumn column,
org.apache.ibatis.scripting.xmltags.SqlNode columnNode)
已过时。
4.x版本会移除该方法
|
protected org.apache.ibatis.scripting.xmltags.SqlNode |
getIfNotNull(EntityColumn column,
org.apache.ibatis.scripting.xmltags.SqlNode columnNode,
boolean empty)
已过时。
4.x版本会移除该方法
|
static Class<?> |
getMapperClass(String msId)
根据msId获取接口类
|
static String |
getMethodName(org.apache.ibatis.mapping.MappedStatement ms)
获取执行的方法名
|
static String |
getMethodName(String msId)
获取执行的方法名
|
protected List<org.apache.ibatis.mapping.ParameterMapping> |
getPrimaryKeyParameterMappings(org.apache.ibatis.mapping.MappedStatement ms)
已过时。
4.x版本会移除该方法
|
protected String |
getSeqNextVal(EntityColumn column)
获取序列下个值的表达式
|
String |
getUUID() |
boolean |
isBEFORE() |
boolean |
isCheckExampleEntityClass() |
boolean |
isNotEmpty() |
protected void |
newSelectKeyMappedStatement(org.apache.ibatis.mapping.MappedStatement ms,
EntityColumn column)
新建SelectKey节点
|
protected void |
setResultType(org.apache.ibatis.mapping.MappedStatement ms,
Class<?> entityClass)
设置返回值类型 - 为了让typeHandler在select时有效,改为设置resultMap
|
void |
setSqlSource(org.apache.ibatis.mapping.MappedStatement ms)
重新设置SqlSource
|
protected void |
setSqlSource(org.apache.ibatis.mapping.MappedStatement ms,
org.apache.ibatis.mapping.SqlSource sqlSource)
重新设置SqlSource,同时判断如果是Jdbc3KeyGenerator,就设置为MultipleJdbc3KeyGenerator
|
boolean |
supportMethod(String msId)
是否支持该通用方法
|
protected String |
tableName(Class<?> entityClass)
获取实体类的表名
|
org.apache.ibatis.scripting.xmltags.WhereSqlNode |
updateByExampleWhereClause(org.apache.ibatis.session.Configuration configuration)
已过时。
4.x版本会移除该方法
|
protected Class<?> mapperClass
protected MapperHelper mapperHelper
public MapperTemplate(Class<?> mapperClass, MapperHelper mapperHelper)
public static String getMethodName(org.apache.ibatis.mapping.MappedStatement ms)
ms - public void addMethodMap(String methodName, Method method)
methodName - method - public String getUUID()
public String getIDENTITY()
public String getIDENTITY(EntityColumn column)
column - public boolean isBEFORE()
public boolean isNotEmpty()
public boolean isCheckExampleEntityClass()
public boolean supportMethod(String msId)
msId - protected void setResultType(org.apache.ibatis.mapping.MappedStatement ms,
Class<?> entityClass)
ms - entityClass - protected void setSqlSource(org.apache.ibatis.mapping.MappedStatement ms,
org.apache.ibatis.mapping.SqlSource sqlSource)
ms - sqlSource - public void setSqlSource(org.apache.ibatis.mapping.MappedStatement ms)
throws Exception
ms - InvocationTargetExceptionIllegalAccessExceptionExceptionpublic org.apache.ibatis.mapping.SqlSource createSqlSource(org.apache.ibatis.mapping.MappedStatement ms,
String xmlSql)
ms - xmlSql - public Class<?> getEntityClass(org.apache.ibatis.mapping.MappedStatement ms)
ms - @Deprecated protected List<org.apache.ibatis.mapping.ParameterMapping> getPrimaryKeyParameterMappings(org.apache.ibatis.mapping.MappedStatement ms)
ms - protected String getSeqNextVal(EntityColumn column)
column - @Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getDynamicTableNameNode(Class<?> entityClass)
entityClass - @Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getDynamicTableNameNode(Class<?> entityClass, String parameterName)
entityClass - parameterName - @Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getIfNotNull(EntityColumn column, org.apache.ibatis.scripting.xmltags.SqlNode columnNode)
一般类型:<if test="property!=null">columnNode</if>
column - columnNode - @Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getIfNotNull(EntityColumn column, org.apache.ibatis.scripting.xmltags.SqlNode columnNode, boolean empty)
一般类型:<if test="property!=null">columnNode</if>
column - columnNode - empty - 是否包含!=''条件@Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getIfIsNull(EntityColumn column, org.apache.ibatis.scripting.xmltags.SqlNode columnNode)
一般类型:<if test="property==null">columnNode</if>
column - @Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getIfCacheNotNull(EntityColumn column, org.apache.ibatis.scripting.xmltags.SqlNode columnNode)
一般类型:<if test="property!=null">columnNode</if>
column - @Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getIfCacheIsNull(EntityColumn column, org.apache.ibatis.scripting.xmltags.SqlNode columnNode)
一般类型:<if test="property_cache!=null">columnNode</if>
column - @Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getColumnEqualsProperty(EntityColumn column, boolean first)
[AND] column = #{property}column - first - @Deprecated protected org.apache.ibatis.scripting.xmltags.SqlNode getAllIfColumnNode(Class<?> entityClass)
entityClass - @Deprecated protected List<org.apache.ibatis.mapping.ParameterMapping> getColumnParameterMappings(org.apache.ibatis.mapping.MappedStatement ms)
ms - protected void newSelectKeyMappedStatement(org.apache.ibatis.mapping.MappedStatement ms,
EntityColumn column)
ms - column - @Deprecated public org.apache.ibatis.scripting.xmltags.IfSqlNode ExampleValidSqlNode(org.apache.ibatis.session.Configuration configuration)
@Deprecated public org.apache.ibatis.scripting.xmltags.WhereSqlNode exampleWhereClause(org.apache.ibatis.session.Configuration configuration)
configuration - @Deprecated public org.apache.ibatis.scripting.xmltags.WhereSqlNode updateByExampleWhereClause(org.apache.ibatis.session.Configuration configuration)
configuration - Copyright © 2017. All rights reserved.