我发现自己需要使用Java中的JSON.stringify(objectMapper.writeValueAsString(someJavaBean));
服务器端,因为我在基础架构中对另一个服务进行了HttpClient调用。杰克逊有没有这样的功能?是否有一种简单的方法可以在不向项目添加其他依赖项的情况下执行此操作?
如果重要,我们就是杰克逊2.3.2。
我需要做的是转换一些JSON,如
{ "first_name" : "Robert", "last_name" : "Kuhar" }
进入像
这样的Javascript字符串"{ \"first_name\" : \"Robert\", \"last_name\" : \"Kuhar\" }"
它不像用"替换所有引号那么简单,是吗?就像在值中嵌入引号会发生什么?或者一些值是单引号分隔的?似乎应该有一个库调用来执行此操作。
有什么建议吗?
答案 0 :(得分:6)
String json = objectMapper.writeValueAsString(someObject);
String encodedASecondTime = objectMapper.writeValueAsString(json);
就这么简单。但是,不确定为什么要这样,因为JSON值已经是一个有效的对象文字。你可以做到
String json = objectMapper.writeValueAsString(someObject);
然后生成像
这样的javascript"var obj = " + json + ";"