天天看点

SpringMvc与前端交互的数据转递(ajax)一、text类型数据二、json类型数据

一、text类型数据

前端:

$.ajax({
          url:'${pageContext.request.contextPath}/zy/user/existLoginName',//请求地址
          type:'post',//请求类型
          data:{loginName:$("#loginName").val()},//传入后台数据
          dataType:'text',//后台返回数据类型
          success : function(data) {
         alert("成功!");
       },
          error:function(data){
              alert("服务器异常!");
          }
    })
           

后端:

@RequestMapping("/existLoginName")
    public void existLoginName(HttpServletRequest request,HttpServletResponse response){
        String zh = request.getParameter("loginName");
        User u = userService.selectUserByLoginName(zh);
        try {
            if(u!=null){
                response.getWriter().write("exist");
            }else{
                response.getWriter().write("ok");
            }
        } catch (IOException e) {
                e.printStackTrace();
        }    
    }
           

二、json类型数据

1.后台@ResponseBody传数据到前台

后端:

@RequestMapping("/existLname")
 @ResponseBody
 public Map<String, String> searchUser(String loginName){
    User u= userService.selectUserByLoginName(loginName);
     Map<String,String> map = new HashMap<String,String>();
     if(u!=null){
       map.put("msg", "no");
    }else{
      map.put("msg", "ok");
    }
    return map;
 }
           

前端:

$.ajax({
         url:'${pageContext.request.contextPath}/user/existLname',
         type:'post',
         dataType:'json',
         data:{loginName:$("#loginName").val()},
         success:function(data){
            alert(data.msg);
          }
     //注意:这里不能加下面这行,否则数据会传不到后台
        //contentType:'application/json;charset=UTF-8',
        })
           

2.后台@RequestBody接收数据

前端:

$.ajax({
                        url:'${pageContext.request.contextPath}/user/existLname',
                        type:'post',
                        contentType:'application/json;charset=UTF-8',//必须有
                        dataType:'json',
                        data:{loginName:$("#loginName").val()},
                        success:function(data){
                            alert(data.msg);
                        }
                    })
           

后端:

@RequestMapping("/existLname")
    @ResponseBody
    public String searchUser(@RequestBody String loginName){
        User u= userService.selectUserByLoginName(loginName);
        JSONObject jo = new JSONObject();
        if(u!=null){
            jo.put("msg", "no");
        }else{
            jo.put("msg", "ok");
        }
        return jo.toString();
    }
           

转载地址:https://www.cnblogs.com/yixtx/p/8358509.html