ソース表示: 初めてのCamel #83607

=== 作成するもの ===

『3秒に1回、文字を標準出力する』

=== 準備 ===

* Java6(JDK)のインストール [http://java.sun.com/javase/ja/6/download.html][[BR]]
* 開発環境Eclipse [[BR]]
* ApacheCamelのZIPダウンロード [http://camel.apache.org/download.html][[BR]]

=== ApacheCamelの解凍 ===

自由なフォルダ(例えばlib)を作って、zipを解凍します。

=== ライブラリをユーザーライブラリに設定 ===

Eclipseのユーザーライブラリを設定すると簡単に複数のjar(ライブラリ)を使うことができるようになります。
さきほど解凍した次のjarファイルをEclipseのユーザーライブラリに設定します。
多くのjarファイルがCamelに入っていますが下記のjar(ライブラリ)で最低限の動作が可能です。
||camel-core-2.10.1.jar||
||log4j-x.x.x.jar||
||slf4j-api-x.x.x.jar||
||slf4j-log4j12-x.x.x.jar||
(x.x.xはバージョン番号になります)

詳細は ・・・ [ユーザーライブラリの設定]

=== 実装 ===


Camelメイン実装
{{{ code java
package ex.hello;

import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.main.Main;

public class HelloCamelMain {

	public static void main(String args[]) throws Exception {
		// Camel本体
		Main main = new Main();

		// Camelに「ルート」を登録
		main.addRouteBuilder(new RouteBuilder() {

			@Override
			public void configure() throws Exception {
				from("timer:timerName?period=3000") // タイマートリガー
				.process(new OutputHelloProcess()); // Processorクラスを呼び出す
			}
		});

		// Camelの起動
		main.run();
	}

}
}}}


SysoutProcessクラスの実装
{{{ code java
package ex.hello;

import org.apache.camel.Exchange;
import org.apache.camel.Processor;

// .process(xxx)の場合は「Processorの実装クラス」を呼び出す事ができる
public class SysoutProcess implements Processor{


	// .process(xxx)が実行されると、このprocessメソッドが呼び出される
	@Override
	public void process(Exchange exchange) throws Exception {
		// 標準出力で"Hello"を出力する
		System.out.println("Hello");
		
	}

}
}}}