博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
@RequestBody忽略不认识的属性
阅读量:5862 次
发布时间:2019-06-19

本文共 876 字,大约阅读时间需要 2 分钟。

hot3.png

有一种情况是,一个对象,要通过ajax传到后台。但是前台的对象属性,比后台的类要多一些。这种情况下,服务器会报错,在前端组装出后台的类的对象,以及传一个Map到后台,然后再组装成类,都不是特别优雅。这种情况下,就可以使用jackson提供的注解,@JsonIgnoreProperties了。

在类上面添加@JsonIgnoreProperties(ignoreUnknown = true)即可忽略类中不存在的属性。

/JS代码var camera = {    cid : "cid",    moreProperties : "more"}  $.ajax({    url : basePath + "camera/deleteCamera",    type :"POST",    dataType : "json",    contentType : "application/json",    data : JSON.stringify(camera)});  //controller代码……public String deleteCamera(@RequestBody Camera camera){……  // moreProperties 属性不是Camera的属性,这样请求会报400,The request sent by the client was syntactically incorrect.public class Camera{    private String cid;    //其他略}  // 加上JsonIgnoreProperties注解之后,请求成功,服务器成功忽略了moreProperties 属性@JsonIgnoreProperties(ignoreUnknown = true)public class Camera{    private String cid;    //其他略}

转载于:https://my.oschina.net/haokevin/blog/2962896

你可能感兴趣的文章
Vertica的这些事<十>—— vertica中group by 和join 语句的优化
查看>>
Spark修炼之道(基础篇)——Linux大数据开发基础:第九节:Shell编程入门(一)...
查看>>
MySQL中如何启用InnoDB数据引擎
查看>>
Duplicate Symbol链接错误的原因总结和解决方法[转]
查看>>
适配器模式
查看>>
刨根问底区块链 —— 基础篇
查看>>
swift GCD 的一些高级用法
查看>>
php 直接调用svn命令
查看>>
建立低权限的ftp帐号
查看>>
htpasswd
查看>>
Android窗口机制(三)Window和WindowManager的创建与Activity
查看>>
Android 编译出错解决
查看>>
iOS--The request was denied by service delegate (SBMainWorkspace) for reason:
查看>>
Android 打开WIFI并快速获取WIFI的信息
查看>>
Spring boot 入门篇
查看>>
linux设备驱动第三篇:写一个简单的字符设备驱动
查看>>
linux网络配置命令总结
查看>>
【IOS开发】GDataXML解析XML
查看>>
CentOS修改文件夹权限
查看>>
Spring源码深度解析:学习笔记
查看>>