问题:Unrecognized field , not marked as ignorable

转载 2015年07月08日 15:39:31


在使用Json传值并且使用@RequestBody注解的时候需要注意一些问题:

  1. 一个方法中只能有一个@RequestBody注解。
  2. 默认情况下@RequestBody标注的对象必须包含前台传来的所有字段。


第一条容易理解,因为RequestBody就是request的inputStream,这个流在第一次使用该注解后会关闭,后面的都会报错(stream closed)。


第二条如果没有包含前台传来的字段,就会报错:Unrecognized field xxx , not marked as ignorable,这是因为MappingJacksonHttpMessageConverter默认要求必须存在相应的字段。如果没有前台传来的某个字段,就会报错。。


解决方法有很多,可以增加一个字段来接收前台传来的这个值,如果存在多个字段,这种方式很不好(就算一个字段,如果没用,新增字段也不好)。


或者在前台往后台传值的时候,去掉无用的字段。这样还能减少网络传输的大小。


还有一些方法,这些方法主要是使用Jackson提供的json注解。


@JsonIgnore注解用来忽略某些字段,可以用在Field或者Getter方法上,用在Setter方法时,和Filed效果一样。这个注解只能用在POJO存在的字段要忽略的情况,不能满足现在需要的情况。


@JsonIgnoreProperties(ignoreUnknown = true),将这个注解写在类上之后,就会忽略类中不存在的字段,可以满足当前的需要。这个注解还可以指定要忽略的字段。使用方法如下:

@JsonIgnoreProperties({ "internalId", "secretKey" })

指定的字段不会被序列化和反序列化。

jackson出现错误 Unrecognized field,几种处理方法

错误堆栈信息如下: org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "HPYS" (Cl...

解决 Unrecognized field xxx , not marked as ignorable 问题

出现这种问题是因为使用jackson进行json转换时,MappingJacksonHttpMessageConverter默认要求必须存在相应的字段。如果没有传来的某个字段或者字段没有提供set方法...

@RequestBody:Unrecognized field , not marked as ignorable问题

Spring MVC中JSON支持未定义的字段的配置 在使用Json传值并且使用@RequestBody注解的时候需要注意一些问题: 一个方法中只能有一个@RequestBody注解。 默认情...

not marked as ignorable

出现如下错误: 原因是:新增了一个字段导致解决: 主要是使用Jackson提供的json注解。@JsonIgnore注解用来忽略某些字段,可以用在Field或者Getter方法上,用在Setter...

mysql: "tablename" is marked as crashed and should be repaired修复 问题分析: 当mysql出现这类提示时,大部分的现象为查询不到正常的

问题分析: 当mysql出现这类提示时,大部分的现象为查询不到正常的表记录,或者只能查询到部分。 主要的原因是对应表的索引文件被损坏,导致索引文件损坏的可能原因有: 频繁的读写表记录数据库服...
  • five3
  • five3
  • 2017年07月19日 16:44
  • 324

com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field 异常

分享牛原创,com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field 异常.com.fa...

jackson出现错误 Unrecognized field,JsonIgnoreProperties忽略不起作用

错误描述错误堆栈信息如下:org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "test" (...

快速解决"is marked as crashed and should be repaired"故障

具体报错如下: Table '.\Tablename\posts' is marked as crashed and should be repaired 提示说论坛的帖子表posts被标...
  • Tankcc
  • Tankcc
  • 2016年08月05日 10:45
  • 17560

[MySQL]快速解决"is marked as crashed and should be repaired"故障

转自:http://www.cnblogs.com/hakuci/archive/2012/03/20/2407723.html

Transaction rolled back because it has been marked as rollback-only

http://hsyd.iteye.com/blog/586772 错误信息: Transaction rolled back because it has been marked as rollb...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:问题:Unrecognized field , not marked as ignorable
举报原因:
原因补充:

(最多只允许输入30个字)