微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajax穿json到后台后台实体接受不到

最近在做一个项目时,遇到了一个奇怪的问题:使用Ajax将Json数据传到后台,但是后台实体类接收不到数据。经过一番排查,最终解决了这个问题。

$.ajax({
    type: "POST",url: "test.do",dataType: "json",data: {username:"test",password:"123456"},success: function(result){
        //处理返回结果
    },error:function(){
        //出错处理
    }
});

ajax穿json到后台后台实体接受不到

以上是我们使用Ajax向后台发送Json的代码,其中dataType指定的是返回结果的数据格式是json类型,data参数是我们要传递的Json数据。

但是,后台却无法正常接收到这个Json数据。经过一番调试,发现是后台实体类属性的命名和Json数据的key不一致导致的。具体来说,如果我们的Json数据是这样的:

{
    "username":"test","password":"123456"
}

后台实体类属性命名为:

public class User{
    private String userName;
    private String password;
    //getters and setters
}

显然这两者之间的命名是不一致的,所以无法正常接收Json数据。

为了解决这个问题,我们只需要在Json数据里将key的名称改成和后台实体类属性一致即可:

$.ajax({
    type: "POST",data: {userName:"test",error:function(){
        //出错处理
    }
});

这样,后台就能够正常接收到Json数据了。

总结起来,我们在使用Ajax将Json数据传到后台时,一定要注意Json数据的key名称后台实体类属性名称一致,否则后台将无法正常接收数据。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐