【问题标题】:Saving Gson's JsonObject to mongoDB as plain Json without Members object将 Gson 的 JsonObject 保存为没有 Members 对象的纯 Json 到 mongoDB
【发布时间】:2018-04-27 06:27:37
【问题描述】:

我正在使用 Gson 库将 JsonString 转换为 JsonObject 并将其保存到 MongoDB。我正在使用带有 mongoDB 的 springboot 应用程序,我的预期结果是直接在数据库中保存为普通 Json 对象。

预期:

    {
  "id": 1,
  "name": "FirstName",
  "data": {
    "dataArrayObject": {
      "ItemName": "Item1"
    }
  }
}

保存到数据库时,保存如下

实际:

      {
  "members": {
    "id": {
      "value": 1,
      "_class": "com.google.gson.JsonPrimitive"
    }
  },
  "members": {
    "name": {
      "value": "FirstName",
      "_class": "com.google.gson.JsonPrimitive"
    }
  },
  "dataArrayObject": {
    "members": {
      "ItemName": {
        "value": "Item1",
        "_class": "com.google.gson.JsonPrimitive"
      },
       "_class": "com.google.gson.JsonPrimitive"
    }
  }
}

【问题讨论】:

  • 提供您的保存数据代码
  • mongoTemplate.insert(jsonObject, COLLECTION_NAME);
  • 尝试保存纯 JSON 字符串
  • 我的要求是直接在DB中保存为JSON

标签: json mongodb spring-boot gson mongotemplate


【解决方案1】:

你可以试试这个。在我使用toString()方法转换为字符串后,我在mongodb中得到了预期的json。

 mongoTemplate.save("collectionName", jsonObject.toString());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-19
    相关资源
    最近更新 更多