apache camel_令人印象深刻的第一个Apache Camel版本

apache camel

在准备下周的CamelOne会议时,我花了一些时间回顾一下Apache Camel项目的历史。 因此,除其他外,我了解了Apache Camel的第一个正式1.0版本
Apache Camel 1.0 – 5年前

我看的越多,这个版本的事实给我留下了深刻的印象。 现在您必须考虑这是5年前完成的,在此版本中,骆驼创始人已经在项目的DNA中

  • Java DSL
  • XML DSL(使用Spring)
  • 路线图上的OSGi
  • 660kb的骆驼核心JAR
  • 18个外部组件(+骆驼核心组件)
  • 2个工作实例
  • 完整的网站,包括文档,包括常见问题解答
  • 项目徽标和包装盒
  • Camel Maven插件可轻松运行Camel及其示例
  • 测试套件

以下是此版本的tar球分布的屏幕截图:

Camel 1.0发行版(在pom.xml中提示OSGi野心)

当您听到詹姆斯谈论过去以及他如何创造骆驼时,他的野心就是骆驼不应该束缚您。 如果要使用Java而不是XML,则可以。 如果您使用的是Spring XML旅行车,那就很好。 如果您对Groovy感兴趣,那么很好,如果您想使用Ruby,那就去吧(在Camel 1.3中添加了受支持的Ruby)。

让我们看一下DSL的通道。 Apache Camel很可能是第一个在其第一版中即开即用地提供多种语言DSL的集成项目。 它只是项目的DNA,而正是IMHO Apache Camel在其他项目中脱颖而出的原因–多元而充满活力的社区以及Camel项目的DNA都包含“没有鞋适合所有人”。

因此,让我们看一下使用Java DSL的示例。 如今,使用最新的Camel版本(例如2.9.2)的人们应该立即熟悉DSL –某些东西从一开始就起作用!

Camel 1.0中的Java DSL

还有XML DSL的样本,您也可以在源代码中看到该样本。

Camel 1.0中的XML DSL

在此第一个版本中,我们还拥有出色的测试工具包,例如,在下面的屏幕快照中注意到模拟的用法和设置期望。 从第一天开始测试骆驼就变得容易了。 是的,这是骆驼项目的DNA。

骆驼1.0中已包含骆驼测试套件

并注意上述单元测试中对Apache Camel创始人的引用。

  • 詹姆斯·斯特拉坎
  • 罗伯·戴维斯
  • 希拉姆·奇里诺
  • 纪尧姆·诺德(Guillaume Nodet)

谢谢你们创造了这个很棒的项目。 令人印象深刻的第一版,你们5年前做了。

我将通过运行Apache Camel 1.0版本中的camel-example-spring结束本博客。
$ cd的例子
$ cd骆驼示例春天 $ mvn编译 $ mvn骆驼:运行

现在,您应该有耐心,因为Maven正在下载5年之久的古老JAR。 所以需要一段时间:)

骆驼1.0示例运行

上面的屏幕截图显示了运行的Camel 1.0示例。 此示例通过使用来自JMS队列的消息并将其写入文件开始。 因此,我们需要与jconsole连接,以发送消息。 我已经突出显示了在jconsole中使用的服务URL。

jconsole发送消息– Camel 1.0摇滚

在jconsole中,我们展开树并找到测试队列,并使用文本“ Camel 1.0 rocks”调用sendTextMessage操作。

在上面的第二张屏幕截图中,您可能会在控制台的最后一行中看到“ Received Exchange”。 这是Camel记录的日志,因为该示例使用了此博客顶部的屏幕快照中所示的以下路由。

然后,我们还可以看到文件也写入了测试目录,在这里我们可以看到文件名是消息ID,文件内容是从jconsole发送的内容:

这是5年前,所以让我们快进到今天。
Apache Camel的最新版本是2.9.2,因此让我们迁移旧示例以使用此版本。 为此,您需要:

  • 调整pom.xml以使用Camel 2.9.2,并且camel-activemq组件已从Camel移到ActiveMQ,因此您需要包括它。 对于日志记录,我们现在使用slf4j。 修改后的pom.xml如下所示
将示例从Camel 1.0升级到2.9.2,调整pom.xml文件
  • 在Spring XML文件中,您需要更改Camel的名称空间,因为当Camel毕业成为Apache顶级项目时,该名称空间已从activemq迁移到camel。 我们也升级到在XSD中使用Spring 3.0。 现在,activemq组件来自ActiveMQ,而不是Camel。 现在,packages属性是一个xml标记,因此您需要在<camelContext>中使用<packlage>。 更新后的文件如下所示:
将Spring XML从Camel 1.0升级到Camel 2.9.2

好的,我们现在可以开始了。

无需更改Java源代码!!!!

该示例从Camel 1.0迁移到2.9.2,而无需更改Java代码!!!!

就像在我们使用JConsole发送文本消息之前一样。

我必须说James和创始人在Camel 1.0版本中实现了这一目标,示例中的DSL与今天的Camel版本完全兼容。

确实是一个非常令人印象深刻的第一版。 骆驼(Camel)开了一个很好的开端,此后此项目就不断发展壮大。

参考: 我们的JCG合作伙伴 Claus Ibsen在Apache Camel博客的Claus Ibsen 上看到令人印象深刻的第一批Apache Camel版本


翻译自: https://www.javacodegeeks.com/2012/06/impressive-first-apache-camel-release.html

apache camel

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值