Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Camel 发布HTTP

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel - 4 - Camel元素

1. Endpoint控制端点
Apache Camel中关于Endpoint最直白的解释就是:

Camel作为系统集成的基础服务组件,在以及编排好的路由规则中,和其他系统进行通信的设定点。

这个"其他系统",可以是存在于本地或者远程的文件系统,可以是进行业务处理的订单系统,可以是消息队列服务,可以是提供了访问地址、访问IP、访问路径的任何服务。

Apache Camel利用自身提供的广泛的通信协议支持,使这里的"通信"动作可以采用大多数已知的协议,例如RPC协议、JMS协议、FTP协议、HTTP协议等....

Camel中的Endpoint控制端点使用URL的方式描述对目标系统的通信。

例如以下URL描述了对外部MQ服务的通信,消息格式是Stomp:
Apache Camel 学习 使用01

 

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel 学习 使用01

Apache Camel - 5 - Camel消息模型

Apache Camel 学习 使用01

Exchange :

Camel中用于交换消息的抽象模型,可以把它理解为一个消息块。

在路由消息传递的过程中,Exchange 是最大的消息容器

Camel中的Exchange是整个路由期间消息的容器。 Exchange还为系统之间的各种类型的交互提供支持,也称为消息交换模式(MEP)。 MEP用于区分单向和请求-响应消息传递样式。 Camel Exchange 持有一个模式属性,可以是

■InOnly-A 单向消息(也称为Eventmessage)。 例如,JMS消息传递通常是单向消息传递。

■InOut-A 请求 - 响应消息。 例如,基于HTTP的传输通常是请求回复,其中客户端请求检索网页,等待来自服务器的回复。
Apache Camel 学习 使用01

Body

body是java.lang.Object类型。

这意味着一条消息可以存储任何类型的内容。

这也意味着应用程序设计者应该确保接收者能够理解消息的内容。

当发送者和接收者使用不同的主体格式时,Camel提供了一些将数据转换为可接受的格式的机制,并且在很多情况下,转换在后台自动进行。