第 188 章 JsonPath Language
作为 Camel 版本 2.13 可用
Camel 支持 JSonPath 以允许使用 Expression 或 Predicate on json 消息。
from("queue:books.new")
.choice()
.when().jsonpath("$.store.book[?(@.price < 10)]")
.to("jms:queue:book.cheap")
.when().jsonpath("$.store.book[?(@.price < 30)]")
.to("jms:queue:book.average")
.otherwise()
.to("jms:queue:book.expensive")188.1. JSonPath Options
JsonPath 语言支持 7 选项,它们列在下方。
| 名称 | 默认 | Java 类型 | 描述 |
|---|---|---|---|
| resultType |
| 设置结果类型的类名称(从输出中输入) | |
| suppressExceptions |
|
| 是否抑制异常,如 PathNotFoundException。 |
| allowSimple |
|
| 是否在 JsonPath 表达式中允许内联简单例外 |
| allowEasyPredicate |
|
| 是否允许使用容易谓词解析程序来预解析 predicates。 |
| writeAsString |
|
| 是否将每行/元素的输出写为 JSON String 值,而不是 Map/POJO 值。 |
| headerName |
| 用作输入的标头名称,而不是消息正文 | |
| trim |
|
| 是否修剪值是否删除前导(尾随空格和换行符) |