骆驼路线和终点

2023-12-25

我一直在仔细研究 Apache Camel 文档,试图对其两个最重要的内容有具体的了解basic概念(端点和路由),尽管这些术语在整个文档中随处可见,但我找不到任何参考资料来实际定义它们是什么以及它们的用途。尽管他们的名字听起来相当明显,而且我think我了解它们是什么,我现在被分配到一项让我陷入 Apache Camel Land 的任务,了解这些机制是什么绝对至关重要。

我的猜测是,“端点”只是一个 bean - 可以像其他任何 bean 一样在配置文件中配置 - 将名称映射到 URI/端口组合(这取自 W3C 文档)。在 Apache Camel 的背景下,我的guess端点用于将组件连接在一起,以便可以在它们之间形成“路线”(连接/映射)。因此,当位于端点 1 的组件 A 想要与位于端点 2 的组件 B 通信时,只要存在从 1 到 2 的映射,Camel 就能够在两者之间传输消息。

如果我错了,请阻止我并纠正我!

现在,我看到了一些示例,看起来可以在 Java 中配置路由:

from("endpointA").routeId("someMessage").to("endpointB");

我见过一些示例,看起来路由可以在 XML 中配置:

<route id="">
    <from .../>
    <to .../>
</route>

这两种配置路由的方法是不同的还是完全不同的概念?

最后,可以在端点之间路由的消息的格式是什么?例如,如果必须是 XML,那么这些路由消息的 XSD/架构是什么?如果它必须是 Java 对象,那么 Camel 可以发送的对象有哪些边界/限制?


看来您已经很好地掌握了这个概念。 我认为用更抽象的术语来思考端点是有帮助的。这骆驼文档 http://camel.apache.org/endpoint.html这里没有太大帮助。端点可以被认为是组件的接口。每个组件可以配置 1 个或多个端点。它帮助我在路线的上下文中思考端点。一个简单的路由可以从端点 A(这可以是 JMS 队列、tcp 套接字、文件或任何骆驼组件)前往端点 B(可以是任何骆驼组件)。当然,您也可以在路径中使用处理器来转换数据。

您给出的两个创建路线的示例只是创建路线的两种方法。它们是同一概念的示例。第一个是 Java DSL,第二个使用 XML。

消息的格式通常是 XML,并且 XML 可以是任何有效的 XML,并且不需要绑定到 XSD。该消息也可以是任何 Java 对象。只要它保留在 JVM 中(即不通过套接字),它就不需要可序列化。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

骆驼路线和终点 的相关文章

  • 如何为最终用户方便地启动Java GUI程序

    用户想要从以下位置启动 Java GUI 应用程序Windows 以及一些额外的 JVM 参数 例如 javaw Djava util logging config file logging properties jar MyGUI jar
  • Java JDBC:更改表

    我希望对此表进行以下修改 添加 状态列 varchar 20 日期列 时间戳 我不确定该怎么做 String createTable Create table aircraft aircraftNumber int airLineCompa
  • 制作一个交互式Windows服务

    我希望我的 Java 应用程序成为交互式 Windows 服务 用户登录时具有 GUI 的 Windows 服务 我搜索了这个 我发现这样做的方法是有两个程序 第一个是服务 第二个是 GUI 程序并使它们进行通信 服务将从 GUI 程序获取
  • Android:捕获的图像未显示在图库中(媒体扫描仪意图不起作用)

    我遇到以下问题 我正在开发一个应用程序 用户可以在其中拍照 附加到帖子中 并将图片保存到外部存储中 我希望这张照片也显示在图片库中 并且我正在使用媒体扫描仪意图 但它似乎不起作用 我在编写代码时遵循官方的Android开发人员指南 所以我不
  • Spark 1.3.1 上的 Apache Phoenix(4.3.1 和 4.4.0-HBase-0.98)ClassNotFoundException

    我正在尝试通过 Spark 连接到 Phoenix 并且在通过 JDBC 驱动程序打开连接时不断收到以下异常 为简洁起见 下面是完整的堆栈跟踪 Caused by java lang ClassNotFoundException org a
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • 磁模拟

    假设我在 n m 像素的 2D 表面上有 p 个节点 我希望这些节点相互吸引 使得它们相距越远吸引力就越强 但是 如果两个节点之间的距离 比如 d A B 小于某个阈值 比如 k 那么它们就会开始排斥 谁能让我开始编写一些关于如何随时间更新
  • 斯坦福 NLP - 处理文件列表时 OpenIE 内存不足

    我正在尝试使用斯坦福 CoreNLP 中的 OpenIE 工具从多个文件中提取信息 当多个文件 而不是一个 传递到输入时 它会给出内存不足错误 All files have been queued awaiting termination
  • 禁止的软件包名称:java

    我尝试从数据库名称为 jaane 用户名 Hello 和密码 hello 获取数据 错误 java lang SecurityException Prohibited package name java at java lang Class
  • Java TestNG 与跨多个测试的数据驱动测试

    我正在电子商务平台中测试一系列商店 每个商店都有一系列属性 我正在考虑对其进行自动化测试 是否有可能有一个数据提供者在整个测试套件中提供数据 而不仅仅是 TestNG 中的测试 我尝试不使用 testNG xml 文件作为机制 因为这些属性
  • Java Integer CompareTo() - 为什么使用比较与减法?

    我发现java lang Integer实施compareTo方法如下 public int compareTo Integer anotherInteger int thisVal this value int anotherVal an
  • AWS 无法从 START_OBJECT 中反序列化 java.lang.String 实例

    我创建了一个 Lambda 函数 我想在 API 网关的帮助下通过 URL 访问它 我已经把一切都设置好了 我还创建了一个application jsonAPI Gateway 中的正文映射模板如下所示 input input params
  • Java执行器服务线程池[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如果我使用 Executor 框架在
  • 如何从泛型类调用静态方法?

    我有一个包含静态创建方法的类 public class TestClass public static
  • 在 Maven 依赖项中指定 jar 和 test-jar 类型

    我有一个名为 commons 的项目 其中包含运行时和测试的常见内容 在主项目中 我添加了公共资源的依赖项
  • 当我从 Netbeans 创建 Derby 数据库时,它存储在哪里?

    当我从 netbeans 创建 Derby 数据库时 它存储在哪里 如何将它与项目的其余部分合并到一个文件夹中 右键单击Databases gt JavaDB in the Service查看并选择Properties This will
  • JGit 检查分支是否已签出

    我正在使用 JGit 开发一个项目 我设法删除了一个分支 但我还想检查该分支是否已签出 我发现了一个变量CheckoutCommand但它是私有的 private boolean isCheckoutIndex return startCo
  • 如何修复 JNLP 应用程序中的“缺少代码库、权限和应用程序名称清单属性”?

    随着最近的 Java 更新 许多人都遇到了缺少 Java Web Start 应用程序的问题Codebase Permissions and Application name体现属性 尽管有资源可以帮助您完成此任务 但我找不到任何资源综合的
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两
  • 使用 xpath 和 vtd-xml 以字符串形式获取元素的子节点和文本

    这是我的 XML 的一部分

随机推荐

  • 类型错误:“_VirtualList”对象不可调用

    当我运行此代码时 我的 GUI 显示此错误 VirtualList 对象不可调用 我哪里错了 import PyPDF2 pdf open the alchemist paulo coelho pdf rb reader PyPDF2 Pd
  • 如何限制docker容器上传的速率?

    我需要防止长时间运行的多 TB 上传耗尽我的所有网络带宽 但我只能在进程级别限制其带宽使用 这意味着减慢整个计算机的网络接口或减慢该用户的网络流量不会工作 幸运的是 上传是用 Docker 容器化的 我该怎么做才能减慢 docker 容器的
  • PHP后台进程

    我写了一个 php irc 机器人 但我需要它在后台工作 有了这个 就不会有退出之类的事情了 做这个的最好方式是什么 感谢致敬 看看下面的网站 关于如何编写 PHP 守护进程有一个相当深入的解释 http kevin vanzonnevel
  • 二维等距网格中的点击检测?

    我从事网络开发已经很多年了 我正在慢慢地参与游戏开发 对于我当前的项目 我有这个等轴测图 我需要使用算法来检测正在单击哪个字段 顺便说一句 这一切都是在浏览器中使用 Javascript 实现的 The map看起来像this https
  • Adobe InDesign .jsx 脚本 执行 .jsx 脚本

    完成执行另一个 jsx 脚本后 如何才能让我的 jsx 脚本执行完毕 也许这将有助于理解我正在尝试做的事情 WebCard jsx file function mySnippet
  • 如何在 GitHub Markdown 中垂直对齐元素?

    如何垂直对齐下图中的图像和文字 我在 Markdown 中是这样写的 a a Download https api bintray com packages edsilfer maven search interface images do
  • 如何获取“Angular2 for TypeScript”(测试版)中的 li-Element 以添加特定的 CSS 类?

    在我的 Angular2 项目中 我试图实现一个搜索框 其结果框看起来就像在 Google 中一样 这就是我得到的并且它有效 但不幸的是 当您搜索某些内容并按 key down 或 key up 时 结果框中的搜索结果不会像 Google
  • for 循环处理不同的变量名

    我正在编程一段时间 但为此我还找不到答案 假设我想在更改变量名称时运行循环 可以说我有 int ran1 int ran2 int ran3 现在我想运行一个 for 循环 将数字放入其中 for int k 0 k lt 3 k ran
  • SOAP 泛型类型序列化

    我们创建了一个类来包装 Web 服务响应的有效负载和公共信息 如下所示 public class ItemResponse
  • 两个第 3 方库中 uint32 的 Typedef 重新定义 (C2371)

    在我的应用程序中我使用Box2D http www box2d org and 蜘蛛猴 https developer mozilla org en spidermonkey 这两个库都定义了 uint32 类型 这显然在同一编译单元中使用
  • 如何使用 SHOW TABLES 只获取表而不获取视图?

    SHOW TABLES为您提供表格 视图 如何仅检索表 show full tables where Table Type BASE TABLE 逐字 或者换句话说 show full tables where Table Type VIE
  • iOS:从 Storyboard 中唯一标识 ViewController

    我有一个习惯ViewController这意味着可重用 并且任意数量的实例将被链接在一起NavigationController在 Storyboard 中 所有这些都与委托共享相同的模型 The ViewController需要告诉模型它
  • 在 macOS 10.12+ 中接收承诺的电子邮件

    以前 我使用以下方法从 Mail app 中拖放的电子邮件 线程 中发现电子邮件元数据 if let filenames draggingInfo namesOfPromisedFilesDropped atDestination URL
  • SimpleQueue 与 Python 中的队列 - 使用 SimpleQueue 的优点是什么?

    The queue 同步队列类 https docs python org 3 library queue html只是简单地指出 SimpleQueue 允许的函数较少 我需要用于多线程应用程序的非常基本的队列功能 使用 SimpleQu
  • Java中如何信任证书颁发机构?

    我的应用程序连接到 SSL Web 服务 该服务使用证书来验证其身份 最近 该证书发生了变化 由于它不是由受信任的机构签名的 因此我的部分应用程序失败了 为了防止将来出现这种情况 该服务的建议是我应该开始信任现有证书的签名机构 而不是单个证
  • iPhone 特别分配为团队管理员并拥有团队代理证书?

    我是我们公司 ADC 上 iPhone 项目的团队管理员 但不是团队代理 团队代理 作为一个单独的人 能否为我提供一份分发配置文件的副本 我可以将其与 XCode 一起使用来创建临时构建 这是因为团队代理人员不是技术人员 但他们是报名参加该
  • 包含函数的 JSON

    我有一个网站 它返回类似 JSON 的数据结构 如下所示 name tom jones no 123 storedproc function callbuyer 0123 我正在使用这些数据 ajax 数据类型为 JSON 不幸的是 我的
  • WCF:FaultContract(typeof(ExceptionDetail))问题

    我已经把属性 FaultContract typeof ExceptionDetail 为我的运营合同 当我尝试将服务添加到客户端应用程序时 出现此错误 Custom tool error Failed to generate code f
  • WebAPI ModelBinder 错误

    我已经实现了ModelBinder但它是BindModel 方法未被调用 我收到错误代码 500 并显示以下消息 Error 不能 从 MyModelBinder 创建一个 IModelBinder 请确保它派生 来自 IModelBind
  • 骆驼路线和终点

    我一直在仔细研究 Apache Camel 文档 试图对其两个最重要的内容有具体的了解basic概念 端点和路由 尽管这些术语在整个文档中随处可见 但我找不到任何参考资料来实际定义它们是什么以及它们的用途 尽管他们的名字听起来相当明显 而且