第 189 章 JsonPath Language


从 Camel 版本 2.13 开始提供

Camel 支持 JSonPath,以允许对 json 消息使用 Expression 或 Predicate。

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")

189.1. jsonpath 选项

JsonPath 语言支持 7 个选项,如下所列。

Name默认值Java 类型描述

resultType

 

字符串

设置结果类型的类名称(输出中的类型)

suppressExceptions

false

布尔值

是否阻止例外,如 PathNotFoundException。

allowSimple

true

布尔值

JsonPath 表达式中是否允许内联简单的异常

allowEasyPredicate

true

布尔值

允许使用 easy predicate 解析器来预解析 predicates。

writeAsString

false

布尔值

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

headerName

 

字符串

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

trim

true

布尔值

是否修剪值以移除前导和结尾的空格和换行符

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.