JSON 作为 Spring 集成中的字符串

JSON as String in Spring Integration

我使用 int:gateway 将 json 字符串引入 int:channel。当我使用 <int-stream:stdout-channel-adapter/> 打印此 json 字符串时(或者即使我在附加到 int:channel 的服务激活器中打印它)它正在打印 key/value 与 = 对而不是 : 例如 -> GenericMessage [payload={id=1596096, key=SOME_KEY, address={first_name=John, last_name=...... 为了解决这个问题,我必须使用 <int:object-to-json-transformer />

使用原始 JSON 的最佳方式是什么?我的用例是进行 JSON 到 JSON 的转换(也使用拆分器)。

您打印的有效负载看起来更像是 Map 或某些 POJO,因此可能在此之前 <int-stream:stdout-channel-adapter/> 您有一个步骤将传入的字符串转换为该对象。

对于原始 JSON 我们建议处理 #jsonpath() SpEL-function: https://docs.spring.io/spring-integration/docs/current/reference/html/spel.html#built-in-spel-functions