Camel学习笔记(一)
我才到新单位,也没啥很具体的任务,每天看看高性能计算和云计算方面的东西,另外就是搞一些研究,为以后项目实施做一些技术储备。Camel就是研究的第一个开源项目。 Apache Camel 是一个非常优秀的开源项目,这是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于POJO的 企业应用模式(Enterprise Integration Patterns)的实现,你可以采用
我才到新单位,也没啥很具体的任务,每天看看高性能计算和云计算方面的东西,另外就是搞一些研究,为以后项目实施做一些技术储备。Camel就是研究的第一个开源项目。
Apache Camel 是一个非常优秀的开源项目,这是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于POJO的 企业应用模式(Enterprise Integration Patterns)的实现,你可以采用其异常强大且十分易用的API 来配置其路由或者中介的规则。
Apache Camel 采用URI来描述各种组件,这样你可以很方便地与各种传输或者消息模块进行交互,其中包含的模块有 HTTP, ActiveMQ, JMS, JBI, SCA, MINA or CXF Bus API。 这些模块是采用可插拔的方式进行工作的。Apache Camel的核心十分小巧你可以很容易地将其集成在各种Java应用中。
具体的文档和介绍可以访问http://camel.apache.org/,百度上基本搜索不到什么中文资料,所以大家还是看看E文的吧,而且论坛上的人很友好,只要你提问,就会很耐心的回答你。
此外国内有一牛人是这个项目的维护者之一,我在论坛和他讨论过一些东西。他就是Willem Jiang,姜宁, 对我提出的很简单的问题也给予了很详细的回答,在此我先要感谢他。
先说一下我研究的目标吧,第一步很简单,我要用Camel接收HTTP请求,然后能打印出来就行了。HTTP服务器用的是Jetty。
很简单的一段程序,然后用soapUI模拟http客户端发送请求到127.0.0.1:8080端口,就可以看到控制台有文本输出了。
第一部分是:
Received exchange: Message: [Body is instance of java.io.InputStream]
第二部分是http请求的body部分,以文本方式显示
这儿的语句都是很简单的,如果不太明白建议去官方网站看一下最基础的介绍
另外需要准备好的jar包如下:
activation-1.1.jar
aopalliance-1.0.jar
camel-core-2.1.0.jar
camel-http-2.1.0.jar
camel-jetty-2.1.0.jar
camel-spring-2.1.0.jar
camel-test-2.1.0.jar
commons-codec-1.3.jar
commons-httpclient-3.1.jar
commons-logging-1.1.1.jar
commons-management-1.0.jar
geronimo-servlet_2.4_spec-1.1.1.jar
jaxb-api-2.1.jar
jaxb-impl-2.1.12.jar
jetty-6.1.16.jar
jetty-client-6.1.16.jar
jetty-sslengine-6.1.16.jar
jetty-util5-6.1.16.jar
jetty-util-6.1.16.jar
junit-4.4.jar
log4j-1.2.14.jar
servlet-api-2.5-20081211.jar
spring-aop-2.5.6.jar
spring-beans-2.5.6.jar
spring-context-2.5.6.jar
spring-core-2.5.6.jar
spring-tx-2.5.6.jar
stax-api-1.0-2.jar
更多推荐
所有评论(0)