SpringBatchを試してみる。その1

SpringFrameworkは前からあるJavaのフレームワークですが、
VMWareに買収されたりしてどうなのよ?って思ってたところで、
・GoogleDevelplerDayでRooってのが良さげだったのと、
・海外の子会社(?)のメンバーとディスカッションしてたら、
 Seasarなんて知らないわって事だったので
 # 狛犬の画像見せたらキュート的な事言ってたけどw
次のプロジェクトで使ってみようかな、と。
 
ってことで、試してみます。
 
何はともあれHello Worldだべって事なんですが、JavaのFrameworkとか
ナメるとやられます。。w
 
【ダウンロード的な】
■IDE
Spring Source Tool Suite(http://www.springsource.com/developer/sts) ってのがあります。
Eclipseに一枚被せたくらいな感じの印象です。
まだ使ってないですがGUIでイイ感じに~的なのがあるらしい。
ダウンロードするのに個人情報をあれやこれや入力する必要があります。
Windowsのインストーラー形式のヤツを使って次へ次へでインストール完了です。
  
■SpringBatch
ダウンロードページにhttp://static.springsource.org/spring-batch/downloads.html
2.1.3(西好きにはたまらない数字w)がlatestなsnapshotだって書いてあったので、
spring-batch-2.1.2.RELEASE-no-dependencies.zipをダウンロードしました。
 
【動かしにかかります】
■インポート
spring-batch-2.1.3.RELEASEのディレクトリの中にsamplesってのがあって
・spring-batch-parent
・spring-batch-samples
・spring-batch-simple-cli
上記3つのプロジェクトっぽいのが入っているので、
とりあえず spring-batch-samples を IDEの File->Import->Existing Projects into Workspace
ってヤツで突っ込みます。
 
■コンパイル
Maven が勝手にあれやこれや落としてくれるので
コンパイルまで完了~のはずだったんですが、何やらvalidation系のクラスで、
そんなの無いよ的なエラーが頻発しています。。
pom.xmlをみると0.8になっているのですが、

<groupId>org.springmodules</groupId>
<artifactId>spring-modules-validation</artifactId>
<version>0.8</version>

↓みたら、0.8aとかいうのがあるので、試しにa付けてみたら
コンパイル通ったみたいですw
http://mvnrepository.com/artifact/org.springmodules/spring-modules-validation/0.8a
 
■動かしてみる
とりあえずググったら、CommandLineJobRunnerとかいうヤツがいるっぽいので、
Run as -> Java Application とかやって、CommandLineJobRunnerを探して実効してみます。
 
■ログをトレースしてみる
INPUTもOUTPUTも分かってないクセに動かしてみてるので、
逆引き(?)してみますw
 
アプリケーションコンテキストってサーブレットコンテキストみたいなもんか?的な。
2010/10/21 21:12:45 org.springframework.context.support.AbstractApplicationContext prepareRefresh
 
なんかイロイロとXMLの定義を読み込んでるらしい。
2010/10/21 21:12:45 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
 
DBが見当たらないからHSQLがなんたらとか言ってます。
情報: No database type set, using meta data indicating: HSQL
 
なんか動いてる予感w
2010/10/21 21:12:52 org.springframework.batch.core.launch.support.SimpleJobLauncher$1 run
 
コンプリートしたらしい。。
情報: Job: [FlowJob: [name=footballJob]] completed with the following parameters: [{}] and the following status: [COMPLETED]
 
シングルトンのクラスがなんか管理してたんですかね。役目を終えたっぽいです。
2010/10/21 21:13:13 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
 
 
ってことで、割と動かすのは手軽っぽいから、明日もうちょい深堀りしてみます。
多重化したときにログファイルってどんな感じになるの?とかも気になるし。

コメント

タイトルとURLをコピーしました