ajax与java后端互传数据

后端传到前端(传一个集合,展示成表格)

controller层

 	@RequestMapping("/showAll")
    @ApiOperation(value = "展示所有图书", httpMethod = "POST")
    public void showAll(HttpServletResponse resp,String lend) throws IOException {
        List<Book> bookList = userService.showAll();
        System.out.println(bookList);//确定后端已获得到数据库信息
        JSONArray books= JSONArray.fromObject(bookList);//将数据转为JSON数组
        /*设置编码,防止出现乱码问题*/
        resp.setCharacterEncoding("utf-8");
        /*得到输出流*/
        PrintWriter respWriter = resp.getWriter();
        respWriter.append(books.toString());

    }

JSONArray 在使用时需要在pom.xml文件中导入相关依赖

js部分

$(function () {
        $.ajax({
            url: 'showAll',//后端对应的接口
            type: 'get',
            dataType: 'json',
            success: function (books) {
                showData(books);
                console.log(books)
            },
            error: function (err) {
                console.log(err);
            }
        })
    })

    // 展示数据
    function showData(books) {
        let str = "";//定义用于拼接的字符串
        for (let i = 0; i < books.length; i++) {
            //拼接表格的行和列
            str = "<tr id='books[i].id'><td>" + books[i].id + "</td><td>" + books[i].bookName +
                "</td><td>" + books[i].author + "</td><td>"
                + books[i].bookType + "</td><td>" + books[i].bookNumber +
                "</td><td>" + books[i].price + "</td><td>" +
                "<button id='books[i].id' index="+books[i].id+" class=lend>借阅</button></td><td>" +
                "<button id='books[i].id' index="+books[i].id+" class=back>归还</button></td></tr>";
//button及其属性可根据需要添加删除
            //追加到table中
            $("#bookList").append(str);

        }

前端 向后端传值

js部分

        for(let i = 0; i < lend.length;i++) {
            lend[i].addEventListener('click',function () {
                let id = this.getAttribute('index')
                console.log(id)
                $.ajax({
                    type: 'post',
                    url: 'lend',//后端对应的接口名
                    data:{
                        id:id //要传的值
                    },
                    async:true,
                    success:function (data) {
                        console.log('发送id成功')

                    },
                    error:function (err) {
                        console.log(err)
                    }
                })
            })
        }
    }

controller层

@RequestMapping("/lend")
    @ApiOperation(value = "借阅图书", httpMethod = "GET")
    @ApiImplicitParam(name = "bookId", value = "图书编号")
    public void lend(HttpServletRequest request) {
        String id = request.getParameter("id");
        System.out.println(id);//测试是否从后端获取到数据
        userService.lend(id);
    }

感谢身边厉害之人的指导!
哈哈哈哈哈哈!
请添加图片描述

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值