在杰克逊有什么类似JSON.stringify的吗?

Bob*_*har 6 java json jackson

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

如果重要,我们是杰克逊2.3.2.

我需要做的是转换一些JSON之类的

{ "first_name" : "Robert", "last_name" : "Kuhar" }
Run Code Online (Sandbox Code Playgroud)

进入Javascript字符串之类的

"{ \"first_name\" : \"Robert\", \"last_name\" : \"Kuhar\" }"
Run Code Online (Sandbox Code Playgroud)

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

有什么建议?

JB *_*zet 8

String json = objectMapper.writeValueAsString(someObject);
String encodedASecondTime = objectMapper.writeValueAsString(json);
Run Code Online (Sandbox Code Playgroud)

就如此容易.但是,不确定为什么要这样,因为JSON值已经是一个有效的对象文字.你可以做

String json = objectMapper.writeValueAsString(someObject);
Run Code Online (Sandbox Code Playgroud)

然后生成类似的JavaScript

"var obj = " + json + ";"
Run Code Online (Sandbox Code Playgroud)

  • "不知道为什么你会想要"叹气.我不想.我正在处理一个充当"信封"的JSON消息格式,但不是非常灵活.消息格式本身就是JSON,但我必须将我的有效负载填充到单个字段中,并将消息JSON作为字符串.您可能会问,该字符串的唯一合法值是什么?"字符串化"JSON.育.我认为你的解决方案有效,我只是测试它. (3认同)