公式のサンプル実行メモ
Spring Batchバージョン 5.0.2
eclipse確認
eclipseにstsとm2eがインストールされていることを確認
help → eclipse マーケットプレース
sts(Springのプラグイン)
https://marketplace.eclipse.org/content/spring-tools-4-aka-spring-tool-suite-4?mpc=true&mpc_state=
m2e(mavenのプラグイン)
https://marketplace.eclipse.org/content/eclipse-m2e-maven-support-eclipse-ide
サンプルプロジェクトのインポート
-
このサイトの「How to complete this guide」のDownloadからソースをダウンロード
https://spring.io/guides/gs/batch-processing/ -
解凍してgs-batch-processing-main内のcompleteをeclipseにインポート
メタデータスキーマの設定(必須)
Spring Batch はJobの実行状況などを各メタテーブルで管理するため、それらテーブルを定義しておかないと実行時にエラーが発生する。
※"DDL スクリプトの例"の箇所にテンプレートがある旨が記載してある
-
ライブラリをインストール
インポートしたプロジェクトを右クリック → 実行 → Maven install を実行
(この実行がない場合はm2eをダウンロード) -
インストールしたライブラリから、spring-batch-core-5.0.2.jarを適当な場所にコピーし、解凍
-
フォルダ直下にある、batch-hsql.propertiesをcomplete/src/main/resourcesにコピー
※サンプルプロジェクトはHSQLDB(メモリ上で動作するDB、一時的に使うイメージ)で作成されている
上記を実施後、プロジェクトを右クリック、実行 → Spring Boot アプリケーションで実行
HSQLDBをサーバー実行に変更
・ HSQLDBのサーバー実行
https://qiita.com/NCC-501/items/a1783e2eb3231addfabc
・ プロパティ設定
(何か間違ってて公式が用意してるプロパティーを更新しても変更されなかったので...)
spring.datasource.url=jdbc:hsqldb:hsql://localhost:9001/testdb
spring.sql.init.schema-locations=classpath*:/org/springframework/batch/core/schema-hsqldb.sql
spring.sql.init.mode=never
・ メタテーブルは手動で作成(公式のプロパティーがうまく更新できなたら不要)
mavenでダウンロードしたspring-batch-core-5.0.2から下記を取得、実行
/org/springframework/batch/core/schema-hsqldb.sql
サンプルのSQLも手動で実行
schema-all.sql