第 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

false

布尔值

是否抑制异常,如 PathNotFoundException。

allowSimple

true

布尔值

是否在 JsonPath 表达式中允许内联简单例外

allowEasyPredicate

true

布尔值

是否允许使用容易谓词解析程序来预解析 predicates。

writeAsString

false

布尔值

是否将每行/元素的输出写为 JSON String 值,而不是 Map/POJO 值。

headerName

 

字符串

用作输入的标头名称,而不是消息正文

trim

true

布尔值

是否修剪值是否删除前导(尾随空格和换行符)