当前位置: 首页 > article >正文

自定义方法SQL注入器-DefaultSqlInjector

/**
 * 自定义Sql注入
 * @author zy
 */
public class SqlInjector extends DefaultSqlInjector {
    @Override
    public List<AbstractMethod> getMethodList(Class<?> mapperClass, TableInfo tableInfo) {
        // 注意:此SQL注入器继承了DefaultSqlInjector(默认注入器),调用了DefaultSqlInjector的getMethodList方法,保留了mybatis-plus的自带方法
        List<AbstractMethod> methodList = super.getMethodList(mapperClass, tableInfo);
        //往父类方法列表中添加了一个新的方法 InsertBatchSomeColumn
        //该方法使用了一个 Lambda 表达式作为参数,逻辑是检查字段填充(fieldFill)是否不等于 FieldFill.UPDATE
        methodList.add(new InsertBatchSomeColumn(i -> i.getFieldFill() != FieldFill.UPDATE));
        return methodList;
    }
}
/**
 * mybatisPlus配置类
 * @author zy
 */
@Configuration
public class MybatisConfig {
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        return interceptor;
    }
    @Bean
    public SqlInjector easySqlInjector(){
        return new SqlInjector();
    }
}
public interface SqlInjectorMapper<T> extends BaseMapper<T> {
    /**
     * 批量插入
     */
    Integer insertBatchSomeColumn(Collection<T> entityList);
}
public interface UserMapper extends SqlInjectorMapper<User> {

}

A用insertBatchSomeColumn()方法

B用saveBatch()方法


http://www.kler.cn/a/272468.html

相关文章:

  • elasticsearch基础
  • 将IDLE里面python环境pyqt5配置的vscode
  • KubeSphere部署安装,接入KubeKey安装的k8s集群
  • Ubuntu 24.04 LTS 安装 Docker Desktop
  • 详解构造函数和析构函数
  • 【前端】CSS学习笔记
  • 【数据库】MySQL数据库基础
  • Spring炼气之路(炼气二层)
  • 交流互动系统|基于springboot框架+ Mysql+Java+Tomcat的交流互动系统设计与实现(可运行源码+数据库+设计文档)
  • GEE:调用 Assets 中的数据
  • HBase在表操作--显示中文
  • 蓝桥杯day3刷题日记--P9420 [蓝桥杯 2023 国 B] 子 2023 / 双子数
  • 8-图像缩放
  • 鸿蒙应用开发之流式网络布局
  • 第十四届蓝桥杯省赛
  • uni-segmented-control在微信小程序中不显示
  • 【LabVIEW FPGA入门】浮点数类型支持
  • python--常用简单功能
  • 阿里云下载安装centos
  • 【02】JavaScript基础
  • 【JAVA笔记】IDEA配置本地Maven
  • JAVA代理模式梳理
  • 如何在 iPhone 上使用蓝牙鼠标
  • 【系统性】 循序渐进学C++
  • 【tls招新web部分题解】
  • 惠海 H6213E 降压恒压芯片 12V24V36V48V60V72V100V150V 转12V9V5V3.3V 车充/仪表供电方案IC