mybatisPlus自定义批量新增的实现代码
mybatisPlus底层的新增方法是一条一条的新增的,今天自定义批量新增方法。
创建自定义数据方法注入类
/** * @Description: EasySqlInjector 自定义数据方法注入 * @Author WangYejian * @Date: 2020/11/4 14:34 */ public class EasySqlInjector extends DefaultSqlInjector { @Override public List<AbstractMethod> getMethodList(Class<?> mapperClass) { //防止父类方法不可用 List<AbstractMethod> methods= super.getMethodList(mapperClass); methods.add(new InsertBatchSomeColumn()); return methods; } }
在mybatisplus配置文件MybatisPlusConfig加入自定义
@Bean public EasySqlInjector easySqlInjector() { return new EasySqlInjector(); }
创建EasyBaseMapper 扩展通用 Mapper
package com.cgmcomm.mallplus.basic.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import java.util.Collection; /** * @Description: EasyBaseMapper 扩展通用 Mapper,支持数据批量插入 * @Author WangYejian * @Date: 2020/10/15 18:57 */ public interface EasyBaseMapper<T> extends BaseMapper<T> { /** * 批量插入 仅适用于mysql * * @param entityList 实体列表 * @return 影响行数 */ Integer insertBatchSomeColumn(Collection<T> entityList); }
** * 定义业务mapper接口,继承刚刚扩展的EasyBaseMapper * * @author 天开易想 */ @Mapper public interface TestMapper extends EasyBaseMapper<Test> { } /** * 业务实现类接口,即可引用 */ @Service public class TestServiceImpl extends ServiceImpl<TestMapper, Test> implements TestService { @Override public Integer testBatch(Collection<Test> testList) { return baseMapper.insertBatchSomeColumn(testList); }
到此这篇关于mybatisPlus自定义批量新增的实现代码的文章就介绍到这了,更多相关mybatisPlus自定义批量新增内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
赞 (0)