使用 JSON-Simple in java 替换一个值

working with JSON-Simple in java replacing a value

我收到 java 安全错误,老实说,如果这是我住的房子,我也会有点害怕。

obj 是 JSON来自 JSON-Simple 库的对象

      obj.put("ord.cancelled_by__c", replaceNull(String.valueOf(((JSONObject)(jsonobjresponseinfo.get("AuditLog"))).get("cancelledBy")), ""));

里面的审计日志对象有一个字段取消了。我想检查该字段是否为空,如果为空,则将其传递给“”

  private static String replaceNull(String value, String ifnull){
    return replaceNull(value, ifnull, value);
  }
  private static String replaceNull(String value, String ifnull, String ifnotnull){
    return value.isEmpty() ? ifnull : ifnotnull;
  }

老实说,我很确定这会奏效,但必须有一个更优雅的解决方案。有人有想法吗?

我在 put 方法上收到原始类型 hashmap 的类型安全错误

感谢阅读

您收到此错误的原因可能是您的 IDE 设置。通常这是一个警告。但是,如果您在 IDE 中设置了 "treat warnings as error" 之类的选项,您的 IDE 会抱怨这是一个错误。 json 中的 JSONObject class - 简单库扩展了 java.util.HashMap 并且没有定义泛型。所以出现了这种类型的警告。