Servlet与Ajax实现前后端交互

在做前后端数据交互的时候遇见了一些问题,记录如下:
说明:jsp是已经引入jQuery过的

前端代码如下所示:
需要注意的是,dataType所规定的数据类型不是单向规定的,而是双向规定的,也就是无论是从前端向后台传输数据,还是从后台向前端传输数据,必定都是JSON类型的数据,否则报错,然后直接转到error,略过success

 <input type="button" id="inputObj" value="select"/>
  <script>
    $(function () {
      $("#inputObj").click(function () {
          $.ajax({
              type:"post",
              url:"wcc",
              data:{"text2":"1002"},
              dataType:"json",
              success:function (result) {
                alert("success")
                alert(result.wcc);
                  //result:返回结果
              },
              error:function (msg) {
                alert("error")
              }
          });
      })
    })
  </script>

这里可以查看前端向后台传递的参数:
这里可以查看前端向后台传递的参数这里可以查看后台向前端传递的参数:
这里可以查看后台向前端传递的参数
后端代码如下所示:
这里若要返回给Ajax数据,则返回数据必须为JSON类型,否则报错,前端直接转到error,一般来说以JSONObject封装较为方便,但是需要引入7个包(可以搜索下载)在这里插入图片描述不仅要引入这7个包,而且要讲这7个JSON包拷贝到Tomcat的lib目录下才可以,否则会爆如下 java.lang.NoClassDefFoundError: net/sf/json/JSONObject或其他 6 个error
下面提供了两种封装JSON数据的方法,jsonObject对象和name对象直接返回都能成功

        resp.setContentType("text/html;charset=UTF-8");
        PrintWriter out = resp.getWriter();
        
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("wcc","back");

        //String name = "{\"password\":\"123456\",\"username\":\"张三\"}";
        out.print(jsonObject);//后端向前端发送

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱吃小巴掌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值