杰克逊有类似 JSON.stringify 的东西吗?

Is there anything like JSON.stringify in Jackson?

我发现自己需要 JSON.stringify(objectMapper.writeValueAsString(someJavaBean)); Java 中的服务器端,因为我对基础设施中的另一个服务进行了 HttpClient 调用。杰克逊有这样的功能吗?有没有一种简单的方法可以在不向我的项目添加其他依赖项的情况下执行此操作?

如果重要的话,我们是 Jackson 2.3.2。

我需要做的是转换一些JSON喜欢

{ "first_name" : "Robert", "last_name" : "Kuhar" }

变成Java像

这样的脚本字符串
"{ \"first_name\" : \"Robert\", \"last_name\" : \"Kuhar\" }"

它不像用 \" 替换所有引号那么简单,是吗?比如如果值中嵌入了引号会发生什么?或者某些值是单引号分隔的?似乎应该有一个调用库来执行此操作。

有什么建议吗?

String json = objectMapper.writeValueAsString(someObject);
String encodedASecondTime = objectMapper.writeValueAsString(json);

就这么简单。不过,不确定为什么要这样做,因为 JSON 值已经是有效的对象文字。你可以做到

String json = objectMapper.writeValueAsString(someObject);

然后生成javascript喜欢

"var obj = " + json + ";"