189.11. 将 JSon 数据分成子行,作为 JSon
您可以使用 jsonpath 来分割 JSon 文档,例如:
from("direct:start")
.split().jsonpath("$.store.book[*]")
.to("log:book");
然后,记录每个图书,但消息正文是一个 映射 实例。有时,您可能需要输出它作为普通 String JSon 值,它可以从 Camel 2.20 开始使用 writeAsString 选项完成,如下所示:
from("direct:start")
.split().jsonpathWriteAsString("$.store.book[*]")
.to("log:book");
然后,每个图书都会作为 String JSon 值进行记录。对于早期版本的 Camel,您需要使用 camel-jackson dataformat 和 marshal 消息正文,使其将消息正文从 Map 转换为 String 类型。