9

我将 json 字符串存储到 mysql 的文本字段中。插入后,我想更新我的 json 字符串并使用 jackson json 将 mysql 行 ID 添加到其中。

我有一个 Json 格式的 java 字符串

{
  "thing":"val"
}

我希望在不编写代码行的情况下添加另一个 K/V。

终于有了这个:

{
  "thing":"val"
  "mysqlId":10
}

我可以将我的 String 转换为 JsonNode :

ObjectMapper mapper = new ObjectMapper();
JsonNode json = mapper.readTree( jsonStr);

想做这样的事情

json.put("mysqlId",10);
json.toString();

然后用 mysql 中的新 json 字符串在我的文本字段中更新

我做不到。我不想使用很多类,杰克逊有一个简单的方法吗?

4

1 回答 1

25

尝试将 yourJsonNode转换为 ancom.fasterxml.jackson.databind.node.ObjectNode然后调用put set(或replace)。

于 2013-05-15T10:20:21.290 回答