apache-camelapache-camel入門


備註

Apache Camel是一個主要有助於解決企業集成挑戰的框架。它的核心可以被認為是路由引擎引擎構建器。實質上,它允許您通過路由連接系統(端點)。這些路由接受可以是任何數據類型的消息。

Apache Camel框架還包含一整套EIP(企業集成模式),例如拆分器,聚合器,基於內容的路由等。由於框架可以在各種獨立的Java應用程序中部署,在各種應用程序服務器(如WildFly和Tomcat)中,或者在完全成熟的企業服務總線上,因此可以將其視為集成框架。

要開始使用該框架,您需要使用以下方法之一將其添加到項目中:

  1. Maven的
  2. 搖籃
  3. 春季啟動
  4. Plain Old JAR庫引用添加到您的項目中。

駱駝域特定語言

Camel的DSL(領域特定語言)是使Camel從其他Integration框架中脫穎而出的功能之一。雖然其他一些框架也具有DSL概念,通常採用XML文件的形式,但DSL在這種情況下始終是基於自定義的語言。

Camel提供多種編程語言的DSL,如Java,Scala,Groovy和XML。

例如,可以通過各種方式完成簡單的文件複製路由,如下面的列表所示

  • Java DSL

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

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

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

安裝或設置

有關添加所需Camel依賴項的詳細說明。


Maven依賴

在您的應用程序中包含Apache Camel的最常見方法之一是通過Maven依賴。通過添加下面的依賴塊,Maven將為您解析Camel庫和依賴項。

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

搖籃

在您的應用程序中包含Apache Camel的另一種常見方法是通過Gradle依賴。只需在下面添加依賴項行,Gradle將為您導入Camel庫及其依賴項。

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

春季啟動

從Camel 2.15開始,您現在可以利用Apache Camel的Spring Boot依賴項。與Camel庫的不同之處在於它提供了一種固定的自動配置,包括自動檢測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>