Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JSON中的JSON,我需要把它看作一个字符串字段_Java_Json_Gson_Fasterxml - Fatal编程技术网

Java JSON中的JSON,我需要把它看作一个字符串字段

Java JSON中的JSON,我需要把它看作一个字符串字段,java,json,gson,fasterxml,Java,Json,Gson,Fasterxml,有人问了类似的问题 现在我传入的json看起来像 { "items": [ { "context": { "rdw": { "queryId": "12345", "filterId": "54321" } }, "startTimestamp": "2012-09-08T22:47:31-07:00", "endTimestamp": "2012-09-08T2

有人问了类似的问题

现在我传入的json看起来像

{
  "items": [
    {
      "context": {
        "rdw": {
          "queryId": "12345",
          "filterId": "54321"
        }
      },
      "startTimestamp": "2012-09-08T22:47:31-07:00",
      "endTimestamp": "2012-09-08T22:47:31-07:00",
      "mrn": "12345",
      "units": [
        "1",
        "2",
        "3"
      ],
      "types": [
        "1",
        "2",
        "3"
      ],
      "minDurationSeconds": "5"
    }
  ]
}
其中一部分上下文对象是可变的,源系统将相应地发送 因此,对于上下文字段,我们需要将整个Json作为

{
        "rdw": {
          "queryId": "12345",
          "filterId": "54321"
        }
}
一串

对于以后的用例,还需要将其解析为对象

添加使用com.fasterxml.jackson.databind.ObjectMapper.ObjectMapper进行解析的代码

WaveformQuery waveformQuery = new ObjectMapper().readValue(
                    waveformQueryStr, WaveformQuery.class);
这会抛出一个错误

Can not deserialize instance of java.lang.String out of START_OBJECT token
 at [Source: java.io.StringReader@66e2cf6e; line: 4, column: 7] (through reference chain: WaveformQuery["items"]->Items["context"])
    at com.fasterxml.jackson.databind.JsonMappingException.from(JsonMappingException.java:164)
    at com.fasterxml.jackson.databind.DeserializationContext.mappingException(DeserializationContext.java:575)

您链接的问题的解决方案对您无效吗?或者您正在寻找如何使用GSON这样的特定库来实现这一点?到目前为止,您尝试了什么?现在我需要它作为字符串,但如果我将上下文指定为字符串,解析器会抛出错误。解析器会向您抛出错误??因为上下文不是字符串,它可能是一个映射。您需要使用JSON工具包将上下文对象序列化为字符串。然后将该字符串添加回整个JSON数据结构中。这正是我现在要做的@热舔