Apache的骆驼使用以下路段在年底以JSON格式导出数据在一(太)大线

问题描述:

我导出数据(Java的DTO的)转换成文本文件JSON格式很多数据,输出很大。 这不是问题。问题在于它全部写在一行中。Apache的骆驼使用以下路段在年底以JSON格式导出数据在一(太)大线

要测试数据,我必须打开这些文件。我喜欢使用Notepad ++,因为使用该编辑器,我可以使用“JSON查看器”插件对其进行格式化。

当这些文件比特定大小(大约100 KB或100百万字符)大时,无法用Notepad ++打开文件。 但不仅如此。由于那么长的路线,处理文件很困难。

因此,我正在寻找一种方法来插入一些“回车”使用“漂亮打印”。 上面的代码不起作用。任何想法为什么?或者其他任何方式来达到这一点,而不使用其他库?

骆驼版> 2.14.0 GSON版> 2.2.2

+0

您可以打开版本2.14中json数据格式 –

+0

的漂亮打印模式?我认为这是随版本2.16。 – publicMee

+0

你也可以在处理器中使用Jackson。我认为它支持prettyprint,如果2.14不支持。 –

骆驼JSON文档中描述Camel JSON 您可以在XML设置DATAFORMAT:

<dataFormats> 
    <json id="gson" prettyPrint="true" library="Gson"/> 
</dataFormats> 

,并在Java中的DSL你可以像这样使用它:

.marshal().json(JsonLibrary.Gson, true) 
.convertBodyTo(String.class, UTF) 
.convertBodyTo(byte[].class, UTF) 
.to("file:/?charset=utf-8"); 
+0

我试过了。这是不可能的(在版本2.14中)。 – publicMee