我在Spring MVC应用程序中使用Jackson1.9.6(codehaus)对响应体进行JSON序列化,但我在找到一种配置漂亮打印的方法时遇到了麻烦。我能找到的所有代码示例(像这样和这样)都涉及到使用ObjectMapper
或ObjectWriter
的实例化,但我目前没有将这些实例化用于其他任何事情。我甚至不知道该把这些代码放哪。我的所有Jackson配置都是通过对序列化到JSON的POJO进行注释来完成的。
有没有办法在注释中指定漂亮的打印?我想他们会把它放进@jsonSerialize,但看起来不是这样。
我要序列化的类如下所示:
@JsonAutoDetect
@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL)
public class JSONObject implements Serializable{...}
我的Spring控制器方法如下所示:
@RequestMapping(method = RequestMethod.GET)
public @ResponseBody List<Object> getMessagesAndUpdates(HttpServletRequest request, HttpServletResponse response) {
JSONObject jsonResponse = new JSONObject();
.
.
.
//this will generate a non-pretty-printed json response. I want it to be pretty-printed.
return jsonResponse;
}
我搜索了一遍又一遍类似的东西,我能找到的最接近的东西是将这个bean添加到我的应用程序上下文配置中(注意:我使用的是Spring Boot,所以我不能百分之百确定这在非Spring Boot应用程序中是否能正常工作):
@Bean
public Jackson2ObjectMapperBuilder jacksonBuilder()
{
Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder();
builder.indentOutput(true);
return builder;
}
在我看来,它是可用的最干净的解决方案,而且效果很好。
我将JSON存储在数据库中,并希望将此JSON按原样包含在API响应中,而不在序列化数据之前进行反序列化。数据本身驻留在包装器对象中。序列化这个包装器时,我数据库中的JSON似乎没有与其他数据一起打印出来,给出了非常奇怪的响应。 我已经编写了一些示例代码来概述我的问题: 此测试失败,输出如下: 我希望jackson能给我以下输出: 有什么方法可以“修复”用注释的原始数据的缩进?
问题内容: 现在,我有一个实例,并希望使用漂亮的JSON 来获取一个。我所有的Google搜索结果都提供了Jackson 1.x的实现方法,而我似乎找不到使用2.2的正确,不建议使用的方法。即使我不认为代码对于此问题绝对必要,这也是我现在拥有的: 问题答案: 您可以启用通过设置漂亮的印刷上的,如下所示:
现在我有一个的实例,希望得到一个具有漂亮JSON的。我在谷歌搜索的所有结果都显示了Jackson1.x的实现方法,而我似乎找不到合适的、不受反对的2.2实现方法。尽管我不认为代码对于这个问题是绝对必要的,但下面是我现在掌握的:
问题内容: 如果有人对JSON的打印非常了解,那么我将不胜感激! 我正在使用以下功能将JSON字符串移动到文件中,以将复杂的python字符串转换为JSON格式: 问题是我遇到了方括号的语法错误,因为这对我来说是个新话题,我不知道该如何解决。我需要的JSON格式如下: 我正在使用Google Visualization API,您可能对此比较熟悉,但是我需要动态图。上面的代码是API创建图形所需的
问题内容: 我正在创建一个JSON文件的脚本。现在,我只是使用(PHP 5.2.x)将数组编码为JSON输出。然后,我将返回值打印到文件中并保存。问题是客户端希望能够打开这些JSON文件以提高可读性,因此我想在其中添加换行符并“漂亮打印” JSON输出。有关如何执行此操作的任何想法?我唯一可以看到的替代方法是完全不使用,而只是手动写入文件内容,并为每行添加自己的换行符。 这是我得到的: 这就是我想
下面是我的例子: 如何为JSONARRAY启用漂亮的打印? 我认为这足以解释我的问题,但是这里有一些bla bla bla bla bla bla因为stackoverflow问我更多的细节,让我发布问题。