提取JSON字符串中extendData的图片信息失败.失败原因:imageContent

简介 根据你提供的错误日志,问题已经很明确了:第一个JSON中多了一个 "imageContent" 字段,而 SafetyRuleDocumentDTO 类中没有定义该字段,并且该类没有配置忽略未知属性,导致Jackson反序列化时抛出 UnrecognizedPropertyException。第二个JSON没有这个字段,所以能正

🔔🔔好消息!好消息!🔔🔔

有需要的朋友👉:微信号 kaigejava2022

根据你提供的错误日志,问题已经很明确了:

第一个 JSON 中多了一个 "imageContent" 字段,而 SafetyRuleDocumentDTO 类中没有定义该字段,并且该类没有配置忽略未知属性,导致 Jackson 反序列化时抛出 UnrecognizedPropertyException

第二个 JSON 没有这个字段,所以能正常执行。

解决方案

方案一:在 DTO 类上添加忽略未知属性的注解(推荐)

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

@JsonIgnoreProperties(ignoreUnknown = true)
public class SafetyRuleDocumentDTO {
    // 原有字段
}

这样即使 JSON 中包含 DTO 未定义的字段(如 imageContent),Jackson 也会忽略它们,不会抛出异常。

方案二:在 DTO 中显式添加 imageContent 字段

private String imageContent;
// getter/setter

如果业务上确实不需要这个字段,建议使用方案一,避免将来其他未知字段再次导致反序列化失败。

补充说明

你之前提到“忽略第一个 json 的 imageContent”,但代码中并没有配置忽略未知字段,所以实际上无法忽略。修复后,extractImageInformation 方法就能正常处理第一个 JSON 了。


TopTop