MybatisPlus如何实现insertBatchSomeColumn进行批量增加


本篇内容介绍了“MybatisPlus如何实现insertBatchSomeColumn进行批量增加”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1、引入相关依赖

<!--mybatis-plus启动器--><dependency><groupId&gt.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.1</version></dependency><!--mybatis-plus扩展插件依赖--><dependency><groupId&gt.baomidou</groupId><artifactId>mybatis-plus-extension</artifactId><version>3.5.1</version></dependency>

2、编写sql注入器

package&nbsp.linmain.mysql.config;import&nbsp.baomidou.mybatisplus.annotation.FieldFill;import&nbsp.baomidou.mybatisplus.core.injector.AbstractMethod;import&nbsp.baomidou.mybatisplus.core.injector.DefaultSqlInjector;import&nbsp.baomidou.mybatisplus.core.metadata.TableInfo;import&nbsp.baomidou.mybatisplus.extension.injector.methods.InsertBatchSomeColumn;importjava.util.List;/***@Authorlinzhuoqi*@Date2023/3/10*@Eamil1580752420@qq*@Version*@Description自定义的sql注入器,插入了批量插入的方法*/publicclassEasySqlInjectorextendsDefaultSqlInjector{@OverridepublicList<AbstractMethod>getMethodList(Class<?>mapperClass,TableInfotableInfo){//注意:此SQL注入器继承了DefaultSqlInjector(默认注入器),调用了DefaultSqlInjector的getMethodList方法,保留了mybatis-plus的自带方法List<AbstractMethod>methodList=super.getMethodList(mapperClass,tableInfo);//增加了一个批量插入的方法methodList.add(newInsertBatchSomeColumn(i->i.getFieldFill()!=FieldFill.UPDATE));returnmethodList;}}

3、在mybatisPlus的配置类中注入插件

@ConfigurationpublicclassMyBatisPlusConfig{@BeanpublicMybatisPlusInterceptormybatisPlusInterceptor(){MybatisPlusInterceptorinterceptor=newMybatisPlusInterceptor();//添加分页插件interceptor.addInnerInterceptor(newPaginationInnerInterceptor(DbType.MYSQL));//添加乐观锁插件interceptor.addInnerInterceptor(newOptimisticLockerInnerInterceptor());returninterceptor;}@BeanpublicEasySqlInjectoreasySqlInjector(){returnnewEasySqlInjector();}}

4、编写dao层接口

package&nbsp.linmain.column.dao;import&nbsp.baomidou.mybatisplus.core.mapper.BaseMapper;import&nbsp.linmain.column.pojo.entity.ColTag;importorg.apache.ibatis.annotations.Mapper;importorg.apache.ibatis.annotations.Param;importjava.io.Serializable;importjava.util.Collection;importjava.util.List;/***专栏标签(ColTag)表数据库访问层**@Authorlinzhuoqi*@Date2023-03-0220:44:38*@Eamil1580752420@qq*@Version*@Description*/@MapperpublicinterfaceColTagDaoextendsBaseMapper<ColTag>{/***批量插入仅适用于mysql**@paramentityList实体列表*@return影响行数*/IntegerinsertBatchSomeColumn(Collection<ColTag>entityList);}

5、最后

进行正常的使用即可

colTagDao.insertBatchSomeColumn(colTags);

“MybatisPlus如何实现insertBatchSomeColumn进行批量增加”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注主机评测网网站,小编将为大家输出更多高质量的实用文章!


上一篇:Docker上如何部署FastApi

下一篇:Python如何实现考试自动答题功能


Copyright © 2002-2019 测速网 https://www.inhv.cn/ 皖ICP备2023010105号 城市 地区 街道
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!
热门搜索