现在我有一个org.fasterxml.jackson.databind.ObjectMapper的实例,希望得到一个带有漂亮JSON的String.我在谷歌搜索的所有结果都显示了Jackson 1.x种方法,而我似乎找不到合适的、不受欢迎的方法来使用2.2.尽管我不认为代码对于这个问题是绝对必要的,但我现在有以下几点:

ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
System.out.println("\n\n----------REQUEST-----------");
StringWriter sw = new StringWriter();
mapper.writeValue(sw, jsonObject);
// Want pretty version of sw.toString() here

推荐答案

您可以通过在ObjectMapper上设置SerializationFeature.INDENT_OUTPUT来启用漂亮打印,如下所示:

mapper.enable(SerializationFeature.INDENT_OUTPUT);

Java相关问答推荐

Java应用程序RAC感知

Java 8 RDX-如何设置单个选项卡标题文本的 colored颜色

如何从片段请求数据到活动?在主要活动中单击按钮请求数据?

Mat. n_Delete()和Mat. n_release的区别

替换com. sun. jndi. dns. DnsContextFactory Wildfly23 JDK 17

XPages-在第二次点击按钮之前延迟

我需要生成一个文件来整合每个特性执行的所有JSON结果

使用传递的参数构造异常的Mockito-doThrow(或thenThrow)

将带有js文件的 bootstrap 程序导入maven项目时出错

GetChildren().emoveAll()不会删除 node

try 从REST API返回对象列表时出错

Oracle中从JSON中提取和插入数据

如何通过Java java.lang.Foreign API访问本机字节数组

在Eclipse中可以使用外部字体吗?

在Java中将对象&转换为&q;HashMap(&Q)

接受类及其接口的Java类型(矛盾)

如何使用jOOQ在PostgreSQL中从枚举类型生成Java枚举

如何在Spring Boot中为不同的部署环境管理多个.properties文件?

如何在特定关键字后提取与模式匹配的多个值?

没有Google Play服务,Firebase Auth无法工作