自定义全局操作,就是将我们需要的sql在项目启动的时候就注入到全局中,操作步骤如下:
在Mapper接口中定义我们需要注入的方法;
扩展AutoSqlInjector中的inject方法,实现Mapper中我们自定义方法要注入的sql;
最后,在全局配置中,配置我们自定义的注入器即可;
第一步:mapper中定义方法
public interface UserMapper extends BaseMapper<User> {
int deleteAll();
}
第二步:重写inject方法
public class MySqlInjector extends AutoSqlInjector {
@Override
public void inject(Configuration configuration, MapperBuilderAssistant builderAssistant, Class<?> mapperClass, Class<?> modelClass, TableInfo table) {
// 构造sql语句
String sql = "delete from " + table.getTableName();
// 构造方法名
String method = "deleteAll";
// 构造SqlSource对象
SqlSourc