第 20 章 JoSQL
概述 复制链接链接已复制到粘贴板!
JoSQL(用于 Java 对象的SQL)语言可让您评估 Apache Camel 中的 predicates 和表达式。JoSQL 使用类似 SQL 的查询语法,对来自内存 Java 对象的 data 执行选择和排序操作,JoSQL 不是一个 数据库。在 JoSQL 语法中,每个 Java 对象实例被视为表行,每个对象方法被视为列名称。使用这个语法,可以构造强大的语句,以便从 Java 对象的集合中提取和编译数据。详情请查看 http://josql.sourceforge.net/。
添加 JoSQL 模块 复制链接链接已复制到粘贴板!
要在路由中使用 JoSQL,您需要在您的项目中添加对 camel-josql
的依赖项,如 例 20.1 “添加 camel-josql 依赖项” 所示。
例 20.1. 添加 camel-josql 依赖项
静态导入 复制链接链接已复制到粘贴板!
要在应用程序代码中使用 sql()
静态方法,请在 Java 源文件中包含以下导入声明:
import static org.apache.camel.builder.sql.SqlBuilder.sql;
import static org.apache.camel.builder.sql.SqlBuilder.sql;
变量 复制链接链接已复制到粘贴板!
表 20.1 “SQL 变量” 列出使用 JoSQL 时可访问的变量。
名称 | 类型 | 描述 |
---|---|---|
|
| 当前交换 |
|
| IN 信息 |
|
| OUT 消息 |
属性 |
| Exchange 属性,其键是 属性 |
header |
| 键为标头的 IN 消息 标头 |
变量 |
| 其键为 变量的变量 |
示例 复制链接链接已复制到粘贴板!
例 20.2 “使用 JoSQL 的路由” 显示使用 JoSQL 的路由。
例 20.2. 使用 JoSQL 的路由