栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Mybatis批量插入(SpringBoot实现Mybatis批量添加功能)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Mybatis批量插入(SpringBoot实现Mybatis批量添加功能)

在Mybatis中实现批量插入,需要使用到Mybatis的foreach标签

先看一下Mapper层的接口


public interface WycUserCouponMapper extends BaseMapper {
    
    boolean designatedUsersToReceiveCoupons(List list);
}

前端传过来的是多个数组,需要用list集合来接收

然后看一下Mapper.xml中的批量插入语法


    
        INSERT INTO wyc_user_coupon
        (
            user_id,
            user_name,
            cou_id,
            user_cou_name,
            user_cou_type,
            user_cou_money,
            max_money,
            user_cou_full)
        VALUES
        
            (
             #{item.userId},
             #{item.userName},
             #{item.couId},
             #{item.userCouName},
             #{item.userCouType},
             #{item.userCouMoney},
             #{item.maxMoney},
             #{item.userCouFull}
            )
        
    

 item属性默认值是item,如果需要换位别的值,需要在Mapper接口添加@Param注解

然后就是Service层 和 Impl层,

(可以直接在测试类中测试看看是否能添加成功,我这里使用的是三层架构来接收前端传过来的数组)

Service层:

package com.ywt.coupon.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ywt.common.utils.DataResult;
import com.ywt.coupon.model.WycUserCoupon;
import com.baomidou.mybatisplus.extension.service.IService;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;


public interface WycUserCouponService extends IService {

    
    DataResult designatedUsersToReceiveCoupons(List list);

}

返回值DataResult是自己封装的结果集,没有结果集的可以使用int/string

ServiceImpl实现层:

@Override
    public DataResult designatedUsersToReceiveCoupons(List list) {
        boolean isRight = wycUserCouponMapper.designatedUsersToReceiveCoupons(list);
        if (isRight){
            return DataResult.success();
        }
        return DataResult.error();
    }

Web层:

    @PostMapping("/designatedUsersToReceiveCoupons")
    public DataResult designatedUsersToReceiveCoupons(@RequestBody List list){
        return wycUserCouponService.designatedUsersToReceiveCoupons(list);
    }

我使用的测试工具是ApiFox,接下来我们在ApiFox中进行测试

我们按照数组的方式来传递,Web层接收到数组进行业务层判断,调用Mapper层接口去添加到数据库,我们看一下结果

 那么我们看一下数据库中有没有添加进去

数据库中也添加成功

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/837274.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号