Camel is a technology that facilitates the transfer of messages from one endpoint to another. Inside the technology, the messages can be modified or simply forwarded without alteration.

Benefits of Using Camel Framework

Enterprise Integration Patterns (EIP)
Enterprise Integration Patterns (EIP) are documented by Gregor Hohpe and Bobby Woolf in 2003 to meet the requirements of designing proper software architecture in many situations. Apache Camel provides the implementation of these patterns and the purpose of this tutorial is to teach how to use Camel in various scenarios.
Introduction
Apache Camel is an open source message-oriented middleware framework. It provides a rule-based routing and mediation engine, which allows users to define rules like if it is a “milk” order, it will be redirected to a milk vendor, or if it is an “oil” order, it will be redirected to an oil vendor. This is done using familiar Java code and users can use their favorite Java IDE or XML editor to define the rules.
Input and Output
The input for the engine can be a comma-delimited text file, a POJO (Plain Old Java Object), XML or any of the other formats supported by Camel. Similarly, the output of the engine can be redirected to a file, to a message queue or even a monitor screen. These are known as endpoints. Camel supports the Message Endpoint EIP pattern, which allows users to use the endpoints to send orders to respective vendors.
Using Apache Camel
Apache Camel can be used with Apache ServiceMix, Apache ActiveMQ and Apache CXF to implement service-oriented architectures. It provides a type-safe environment to define the rules and eliminates the need of bulky XML configuration files. The endpoints supported by Camel are discussed in the Endpoints chapter.
Integration with Other Frameworks
Camel is typically used with Apache ServiceMix, Apache ActiveMQ and Apache CXF to implement service-oriented architectures.