JSON传入数组至后台通过动态sql进行多删操作

本文介绍了两种在前端通过AJAX向后台传递数组数据的方法,包括使用传统方式将数组作为参数和以JSON格式发送。后台通过@RequestParam和@RequestBody注解分别接收这两种形式的数据,并结合MyBatis的foreach标签进行批量删除操作。内容详细阐述了前端jQuery的实现和后端Spring MVC的处理逻辑。
摘要由CSDN通过智能技术生成

方法一:
前端页面传入复选框勾选生成一个数组

   $("#delete").click(function () {
        var abc = [];
        //定义一个空数组
        $("input[name='yy']:checked").each(function (i) {    //把所有被选中的复选框的值存入数组
            abc[i] = $(this).val();
        });

        $.ajax({
            url: '/printer/deletes',
            type: 'post',
            data: {ids: abc},
            success: function (data) {
                if (data.rs) {
                } else {
                    layer.msg(data.msg, {icon: 2, time: 2000});
                }
            }
        })
window.parent.document.getElementById('iframe').contentWindow.location.reload(true);
    })

后台接收

    @RequestMapping("deletes")
    @ResponseBody
    public void deletes(@RequestParam("ids[]")  String[] ids) {
        System.out.println(Arrays.toString(ids));
        printerService.deletes(ids);
    }

在xml文件写如下方法


    <delete id="deletes">
        delete from t_printer where id in
        (
        <foreach collection="array" item="ids" separator="," >
           #{ids}
        </foreach>
        )
    </delete>

方法二:

$.ajax({
            url: '/printer/deletes',
            type: 'post',
            dataType: 'json',
            contentType: "application/json;charsetset=UTF-8",
            data: JSON.stringify(abc),
            success: function (data) {
                if (data) {
                    layer.msg("成功", {icon: 1, time: 2000});
                } else {
                    layer.msg("11111", {icon: 2, time: 2000});
                }
            }
        })

这里向后台传入json格式的数组,后台拿到的String[] abc必须前面带@Requestbody注解
然后通过foreach里面逐一调用delete方法删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值