public class AutoSqlInjector extends java.lang.Object implements ISqlInjector
SQL 自动注入器
| 限定符和类型 | 字段和说明 |
|---|---|
protected org.apache.ibatis.builder.MapperBuilderAssistant |
builderAssistant |
protected org.apache.ibatis.session.Configuration |
configuration |
protected org.apache.ibatis.scripting.LanguageDriver |
languageDriver |
| 构造器和说明 |
|---|
AutoSqlInjector() |
| 限定符和类型 | 方法和说明 |
|---|---|
org.apache.ibatis.mapping.MappedStatement |
addDeleteMappedStatement(java.lang.Class<?> mapperClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource) |
org.apache.ibatis.mapping.MappedStatement |
addInsertMappedStatement(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource,
org.apache.ibatis.executor.keygen.KeyGenerator keyGenerator,
java.lang.String keyProperty,
java.lang.String keyColumn) |
org.apache.ibatis.mapping.MappedStatement |
addMappedStatement(java.lang.Class<?> mapperClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource,
org.apache.ibatis.mapping.SqlCommandType sqlCommandType,
java.lang.Class<?> parameterClass,
java.lang.String resultMap,
java.lang.Class<?> resultType,
org.apache.ibatis.executor.keygen.KeyGenerator keyGenerator,
java.lang.String keyProperty,
java.lang.String keyColumn) |
org.apache.ibatis.mapping.MappedStatement |
addSelectMappedStatement(java.lang.Class<?> mapperClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource,
java.lang.Class<?> resultType,
TableInfo table) |
org.apache.ibatis.mapping.MappedStatement |
addUpdateMappedStatement(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource) |
protected java.lang.String |
convertIfTag(boolean ignored,
TableFieldInfo fieldInfo,
java.lang.String prefix,
boolean close)
IF 条件转换方法
|
protected java.lang.String |
convertIfTag(TableFieldInfo fieldInfo,
boolean close) |
protected java.lang.String |
convertIfTag(TableFieldInfo fieldInfo,
java.lang.String prefix,
boolean close) |
protected java.lang.String |
convertIfTagIgnored(TableFieldInfo fieldInfo,
boolean close) |
protected java.lang.Class<?> |
extractModelClass(java.lang.Class<?> mapperClass)
避免扫描到BaseMapper
|
protected GlobalConfiguration |
getGlobalConfig()
全局配置
|
void |
inject(org.apache.ibatis.session.Configuration configuration,
org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
自定义方法,注入点(子类需重写该方法)
|
void |
inject(org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant,
java.lang.Class<?> mapperClass)
注入单点 crudSql
|
protected void |
injectDeleteByIdSql(boolean batch,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入删除 SQL 语句
|
protected void |
injectDeleteByMapSql(java.lang.Class<?> mapperClass,
TableInfo table)
注入 map 条件删除 SQL 语句
|
protected void |
injectDeleteSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入 entity 条件删除 SQL 语句
|
protected void |
injectInsertOneSql(boolean selective,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入插入 SQL 语句
|
protected void |
injectSelectByIdSql(boolean batch,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入查询 SQL 语句
|
protected void |
injectSelectByMapSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入 map 查询 SQL 语句
|
protected void |
injectSelectCountSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入EntityWrapper查询总记录数 SQL 语句
|
protected void |
injectSelectListSql(SqlMethod sqlMethod,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入EntityWrapper方式查询记录列表 SQL 语句
|
protected void |
injectSelectMapsSql(SqlMethod sqlMethod,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入EntityWrapper方式查询记录列表 SQL 语句
|
protected void |
injectSelectObjsSql(SqlMethod sqlMethod,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入EntityWrapper方式查询记录列表 SQL 语句
|
protected void |
injectSelectOneSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入实体查询一条记录 SQL 语句
|
protected void |
injectSql(org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入SQL
|
void |
injectSqlRunner(org.apache.ibatis.session.Configuration configuration)
注入SqlRunner相关
|
protected void |
injectUpdateByIdSql(boolean selective,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入更新 SQL 语句
|
protected void |
injectUpdateSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入批量更新 SQL 语句
|
void |
inspectInject(org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant,
java.lang.Class<?> mapperClass)
CRUD注入后给予标识 注入过后不再注入
|
protected java.lang.String |
sqlSelectColumns(TableInfo table,
boolean entityWrapper)
SQL 查询所有表字段
|
protected java.lang.String |
sqlSelectObjsColumns(TableInfo table)
SQL 设置selectObj sqlselect
|
protected java.lang.String |
sqlSet(boolean selective,
TableInfo table,
java.lang.String prefix)
SQL 更新 set 语句
|
protected java.lang.String |
sqlWhere(TableInfo table)
SQL 查询条件
|
protected java.lang.String |
sqlWhereByMap(TableInfo table)
SQL map 查询条件
|
protected java.lang.String |
sqlWhereEntityWrapper(TableInfo table)
EntityWrapper方式获取select where
|
protected java.lang.String |
sqlWordConvert(java.lang.String convertStr)
获取需要转义的SQL字段
|
protected org.apache.ibatis.session.Configuration configuration
protected org.apache.ibatis.scripting.LanguageDriver languageDriver
protected org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant
public void inspectInject(org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant,
java.lang.Class<?> mapperClass)
inspectInject 在接口中 ISqlInjectorbuilderAssistant - mapperClass - public void inject(org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant,
java.lang.Class<?> mapperClass)
inject 在接口中 ISqlInjectorprotected void injectSql(org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入SQL
builderAssistant - mapperClass - modelClass - table - public void inject(org.apache.ibatis.session.Configuration configuration,
org.apache.ibatis.builder.MapperBuilderAssistant builderAssistant,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
protected java.lang.Class<?> extractModelClass(java.lang.Class<?> mapperClass)
mapperClass - protected void injectInsertOneSql(boolean selective,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入插入 SQL 语句
selective - 是否选择插入mapperClass - modelClass - table - protected void injectDeleteSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入 entity 条件删除 SQL 语句
mapperClass - modelClass - table - protected void injectDeleteByMapSql(java.lang.Class<?> mapperClass,
TableInfo table)
注入 map 条件删除 SQL 语句
mapperClass - table - protected void injectDeleteByIdSql(boolean batch,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入删除 SQL 语句
mapperClass - modelClass - table - protected void injectUpdateByIdSql(boolean selective,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入更新 SQL 语句
mapperClass - modelClass - table - protected void injectUpdateSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入批量更新 SQL 语句
mapperClass - modelClass - table - protected void injectSelectByIdSql(boolean batch,
java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入查询 SQL 语句
batch - 是否为批量插入mapperClass - modelClass - table - protected void injectSelectByMapSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入 map 查询 SQL 语句
mapperClass - modelClass - table - protected void injectSelectOneSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入实体查询一条记录 SQL 语句
mapperClass - modelClass - table - protected void injectSelectListSql(SqlMethod sqlMethod, java.lang.Class<?> mapperClass, java.lang.Class<?> modelClass, TableInfo table)
注入EntityWrapper方式查询记录列表 SQL 语句
sqlMethod - mapperClass - modelClass - table - protected void injectSelectMapsSql(SqlMethod sqlMethod, java.lang.Class<?> mapperClass, java.lang.Class<?> modelClass, TableInfo table)
注入EntityWrapper方式查询记录列表 SQL 语句
sqlMethod - mapperClass - modelClass - table - protected void injectSelectObjsSql(SqlMethod sqlMethod, java.lang.Class<?> mapperClass, java.lang.Class<?> modelClass, TableInfo table)
注入EntityWrapper方式查询记录列表 SQL 语句
sqlMethod - mapperClass - modelClass - table - protected void injectSelectCountSql(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
TableInfo table)
注入EntityWrapper查询总记录数 SQL 语句
mapperClass - modelClass - table - 表信息protected java.lang.String sqlWhereEntityWrapper(TableInfo table)
EntityWrapper方式获取select where
table - 表信息protected java.lang.String sqlSet(boolean selective,
TableInfo table,
java.lang.String prefix)
SQL 更新 set 语句
selective - 是否选择判断table - 表信息prefix - 前缀protected java.lang.String sqlWordConvert(java.lang.String convertStr)
获取需要转义的SQL字段
convertStr - protected java.lang.String sqlSelectColumns(TableInfo table, boolean entityWrapper)
SQL 查询所有表字段
table - entityWrapper - 是否为包装类型查询protected java.lang.String sqlSelectObjsColumns(TableInfo table)
SQL 设置selectObj sqlselect
table - 是否为包装类型查询protected java.lang.String sqlWhere(TableInfo table)
SQL 查询条件
protected java.lang.String sqlWhereByMap(TableInfo table)
SQL map 查询条件
protected java.lang.String convertIfTag(boolean ignored,
TableFieldInfo fieldInfo,
java.lang.String prefix,
boolean close)
IF 条件转换方法
ignored - 允许忽略fieldInfo - 字段信息prefix - 条件前缀close - 是否闭合标签protected java.lang.String convertIfTagIgnored(TableFieldInfo fieldInfo, boolean close)
protected java.lang.String convertIfTag(TableFieldInfo fieldInfo, java.lang.String prefix, boolean close)
protected java.lang.String convertIfTag(TableFieldInfo fieldInfo, boolean close)
public org.apache.ibatis.mapping.MappedStatement addSelectMappedStatement(java.lang.Class<?> mapperClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource,
java.lang.Class<?> resultType,
TableInfo table)
public org.apache.ibatis.mapping.MappedStatement addInsertMappedStatement(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource,
org.apache.ibatis.executor.keygen.KeyGenerator keyGenerator,
java.lang.String keyProperty,
java.lang.String keyColumn)
public org.apache.ibatis.mapping.MappedStatement addDeleteMappedStatement(java.lang.Class<?> mapperClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource)
public org.apache.ibatis.mapping.MappedStatement addUpdateMappedStatement(java.lang.Class<?> mapperClass,
java.lang.Class<?> modelClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource)
public org.apache.ibatis.mapping.MappedStatement addMappedStatement(java.lang.Class<?> mapperClass,
java.lang.String id,
org.apache.ibatis.mapping.SqlSource sqlSource,
org.apache.ibatis.mapping.SqlCommandType sqlCommandType,
java.lang.Class<?> parameterClass,
java.lang.String resultMap,
java.lang.Class<?> resultType,
org.apache.ibatis.executor.keygen.KeyGenerator keyGenerator,
java.lang.String keyProperty,
java.lang.String keyColumn)
public void injectSqlRunner(org.apache.ibatis.session.Configuration configuration)
ISqlInjectorinjectSqlRunner 在接口中 ISqlInjectorSqlRunnerprotected GlobalConfiguration getGlobalConfig()
全局配置