Apache Camel🦒: How to write First Route.
Tags: opensource, java, webdev, programming
Published: 2021-12-21 04:07:10


## Apache Camel
Hello Its Rohan Kadam😊,

### What is Apache Camel🦒?

Apache Camel ™ is a versatile open-source integration framework based on known [Enterprise Integration Patterns](https://camel.apache.org/components/latest/eips/enterprise-integration-patterns.html).

Camel empowers you to define routing and mediation rules in a variety of domain-specific languages ([DSL](https://camel.apache.org/manual/latest/dsl.html), such as Java, XML, Groovy, Kotlin, and YAML). This means you get smart completion of routing rules in your IDE, whether in a Java or XML editor.

Apache Camel uses [URIs](https://camel.apache.org/manual/latest/uris.html) to work directly with any kind of transport or messaging models such as [HTTP](https://camel.apache.org/components/latest/http-component.html), [ActiveMQ](https://camel.apache.org/components/latest/activemq-component.html), [JMS](https://camel.apache.org/components/latest/jms-component.html), JBI, SCA, [MINA](https://camel.apache.org/components/latest/mina-component.html) or [CXF](https://camel.apache.org/components/latest/cxf-component.html), as well as pluggable [Components](https://camel.apache.org/manual/latest/component.html) and [Data Format](https://camel.apache.org/manual/latest/data-format.html) options. Apache Camel is a small library with minimal [dependencies](https://camel.apache.org/manual/latest/what-are-the-dependencies.html) for easy embedding in any Java application. Apache Camel lets you work with the same [API](https://camel.apache.org/manual/latest/exchange.html) regardless of which kind of transport is used — so learn the API once and you can interact with all the [Components](https://camel.apache.org/components/latest/index.html) provided out-of-box.
[**Apache Camel**](https://camel.apache.org/)

![Apache Camel: How to write First Route](https://cdn-images-1.medium.com/max/3840/1*1JaCfnLsL3IZ0Q-gFRCt6A.png)

### Step 1: Create Spring Boot Project Using spring initializer.
[**Spring Initializr**](https://start.spring.io/)

### Step 2: Add the following dependencies to pom.xml

![apache-1](https://cdn-images-1.medium.com/max/2468/1*IheYjbpv2gXmXPVINRN8CQ.png)

### Step 3: Creating a basic first route.

### Apache Camel Routes:-

A Camel *route* is where the integration flow is defined. For example to integrate two systems then a Camel route can be *coded* to specify how these systems are integrated.

An example could be to take files from an FTP server and send them to an ActiveMQ messaging system.

This can be coded in a route using Java with the [Java DSL](https://camel.apache.org/manual/latest/java-dsl.html)

![Test Route](https://cdn-images-1.medium.com/max/2348/1*3BojIKoblLKlIHV2DnSZcQ.png)

### Step 4: On Successfully Creation on Route is registered.

![Output Route Started](https://cdn-images-1.medium.com/max/4012/1*dTKTcOmw8EfeQ2tEJ6ZPrg.png)

### Conclusion:-

In the article, we tried to understand what is apache camel is and how to implement a basic route using spring boot. It's been used by developers to develop high speed and flexible applications

Please do share and like 💕if you find the article useful. Follow me on medium [Rohan Ravindra Kadam](undefined) and on Twitter at [**rohankadam25](https://twitter.com/rohankadam25)**

### Bibliography:-
[**What is Camel?**](https://camel.apache.org/manual/latest/faq/what-is-camel.html)

![Thank You -Rohan Kadam](https://cdn-images-1.medium.com/max/2800/1*f9TMjifJVReTlh93qJ845Q.png)