Premiers pas avec apache-camel

Installation ou configuration

Instructions détaillées sur l’ajout des dépendances Camel requises.


Dépendance Maven

L’une des façons les plus courantes d’inclure Apache Camel dans votre application consiste à utiliser une dépendance Maven. En ajoutant le bloc de dépendance ci-dessous, Maven résoudra les bibliothèques et les dépendances Camel pour vous.

<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-core</artifactId>
  <version>2.17.3</version>
</dependency>

Grade

Une autre façon courante d’inclure Apache Camel dans votre application consiste à utiliser une dépendance Gradle. Ajoutez simplement la ligne de dépendance ci-dessous et Gradle importera la bibliothèque Camel et ses dépendances pour vous.

// https://mvnrepository.com/artifact/org.apache.camel/camel-core
compile group: 'org.apache.camel', name: 'camel-core', version: '2.17.3'

Botte de printemps

Depuis Camel 2.15, vous pouvez désormais tirer parti de la dépendance Spring Boot d’Apache Camel. La différence avec cette bibliothèque Camel est qu’elle fournit une configuration automatique avisée, y compris la détection automatique des routes Camel.

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-spring-boot</artifactId>
    <version>${camel.version}</version> <!-- use the same version as your Camel core version -->
</dependency>

Langage spécifique au domaine Camel

Le DSL (Domain Specific Language) de Camel est l’une des fonctionnalités qui distinguent Camel des autres frameworks d’intégration. Alors que certains autres frameworks présentent également un concept DSL, généralement sous la forme d’un fichier XML, le DSL était dans de tels cas toujours un langage personnalisé.

Camel propose plusieurs DSL dans des langages de programmation tels que Java, Scala, Groovy et XML.

Par exemple, un simple itinéraire de copie de fichier peut être effectué de différentes manières, comme indiqué dans la liste ci-dessous.

  • Java DSL

     from("file:data/in").to("file:data/out");
    
  • Blueprint/Spring DSL (XML)

    <route>
      <from uri="file:data/inbox"/>
      <to uri="file:data/out"/>
    </route>
    
  • Scala DSL

    from "file:data/inbox" -> "file:data/out"