java - 带有通知的未知属性失败

标签 java jackson

如果我禁用未知属性的失败:

new ObjectMapper().configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)

遇到未知属性时有没有办法收到通知?这样我就可以输出日志消息?

最佳答案

DeserializationProblemHandler类似乎做你想做的事。

它允许您实现此方法来处理未知属性:

boolean handleUnknownProperty(DeserializationContext ctxt,
        JsonParser jp, JsonDeserializer<?> deserializer,
        Object beanOrClass, String propertyName)

根据文档:

Method called when a JSON Map ("Object") entry with an unrecognized name is encountered.

您可以使用 DeserializationConfig.withHandler(DeserializationProblemHandler h)DeserializationConfig 对象上注册自定义处理程序方法。

关于java - 带有通知的未知属性失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43176446/

相关文章:

java - 如何使用jsp从网页中提取链接?

annotations - 在 Kotlin 中注释属性时,注释的默认目标是什么?

java - 我们可以将带有setter和getter的类称为Java Bean吗?

java - 同步方法调用后同步是否允许所有变量可见?

java - 为什么 swagger 注释会生成带有默认路径前缀的 api-docs

Java `json_decode` (PHP) 等效项

java - 使用 Jackson Parser 从 JSON 代码获取属性

java - 如何序列化/反序列化 "splashed"复杂类型?

java - org.codehaus.jackson.JsonParseException : Unexpected character ('' (code 65279/0xfeff)): expected a valid value

java - 应使用哪种罗马化标准来改进 ICU4j 的阿拉伯语-拉丁语音译?