controller 获取data: JSON.stringify(param)

1、jsp页面发送ajax的post请求:

 form.on('submit(addExpert)',function (data) {
            var param=data.field;//定义临时变量获取表单提交过来的数据,非json格式
            console.log(JSON.stringify(param));//测试是否获取到表单数据,调试模式下在页面控制台查看
            $.ajax({
                url: _basePath + "reg/addExpert",
                type:'post',//method请求方式,get或者post
                dataType:'json',//预期服务器返回的数据类型
                data:JSON.stringify(param),//表格数据序列化 {name: value}           
                contentType: "application/json; charset=utf-8",
                success:function(data) {//res为相应体,function为回调函数
                    //console.log(data);
                    /* data = {code:1,msg:"chenggong",data:null} */
                    if(data.code == 1){
                        layer.alert('操作成功!!!',{icon:6});
                    }else{
                        layer.alert('操作失败!!!' + data.msg,{icon:6});
                    }
                    
                    // 切换页面
                   //windows.location.href = "localhost:8080/path/xxxx.html";// 百度一下js切换页面的方式(3-4种)
                },
                error:function(){
                    layer.alert('操作失败!!!',{icon:5});
                }
            });
        });

注意:

1、发送数据时,data要转化为json格式

2、basePath是项目根目录

<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>

 

2、controller接收请求

@ResponseBody
    @RequestMapping("addExpert")
    public ReturnResult<Object> add(@RequestBody User user){
        System.out.println(user.toString());
        return us.addExpert(user);
     }
    

 

注意:

1、@ResponseBody修饰的方法返回的数据,springmvc将其自动转换成json格式,返回给前端

2.@RequestBody修饰目标方法的传入参数,可以将ajax发送的json对象赋值给参数。

posted on 2019-05-08 13:30  王甜甜的小摩托  阅读(5457)  评论(0编辑  收藏  举报

导航