目次 > 第2章 バッチフレームワークチュートリアル > 2.1 チュートリアル学習環境の整備
2.1 チュートリアル学習環境の整備
本節では、チュートリアルを学習するための環境整備について説明する。
備考
環境設備をOracleまたはPostgreSQLで行いたい場合は、「3.1 チュートリアル学習環境の整備(Oracle)」、「3.2 チュートリアル学習環境の整備(PostgreSQL)」を参照のこと。
想定環境
本資料では以下の開発環境を想定して解説している。
- フレームワーク:TERASOLUNA Batch Framework for Java ver2.0.3.0
- OS:Microsoft Windows XP Professional
- JDK:J2SDK1.5.0
- データベース:HSQLDB 1.8.0.4
- 総合環境開発:Eclipse SDK 3.4.x
インストール/開発環境の整備
(1) アプリケーションの用意
本資料で必要となるアプリケーションを以下に用意する。
- J2SDK 1.5.0_xx(xはバージョン番号)
- HSQLDB 1.8.0.4
- Eclipse SDK 3.4.x
(2)アプリケーションのインストール
用意した各アプリケーションをインストールする。本資料ではアプリケーションをそれぞれ以下のディレクトリにインストー ルすると想定して記述している。
アプリケーション | インストールディレクトリ |
J2SDK 1.5.0_xx(xはバージョン番号) | C:\Program Files\java\jdk1.5.0_xx (xはバージョン番号) |
Eclipse SDK 3.4.x | C:\Eclipse |
Javaホームディレクトリの設定
ここでは以下のように環境変数を設定する。
- JAVA_HOME : C:\Program Files\Java\jdk1.5.0_xx (xはバージョン番号)
- path : %JAVA_HOME%\bin;
Eclipseの設定
- インストール済みJREの設定
- Eclipseの「ウィンドウ」→「設定」メニューを選択する。
- 「java」→「インストール済みのJRE」で、「jdk1.5.0_xx (xはバージョン番号)」にチェックがついていることを確認する。
- 続けて「java」→「コンパイラー」で、「JDK 準拠」のコンパイラ準拠レベルが“5.0”になるように設定する。
(3)プロジェクトの準備
本資料で使用するチュートリアルアプリケーションではBatch版で提供しているブランクプロジェクトを使用する。
ここでは“terasoluna-batch4j-blank_(バージョン番号).zip”ファイルを“C:\Eclipse\workspace”直下に展開する。
(4)プロジェクトのインポート
「(3)プロジェクトの準備」で作成した“C:\Eclipse\workspace\terasoluna-batch4j-blank_(バージョン番号)”をEclipseで編集出来るようにインポートする。
- Eclipseを起動する。
- 「ファイル」→「インポート」を選択する。
- 選択画面では「既存のプロジェクトをワークスペースへ」を選択して、「次へ」を押下する。
- 「プロジェクトのインポート」画面ではルートディレクトリの選択欄に“C:\Eclipse\workspace\terasoluna-batch4j-blank_(バージョン番号)”を指定し、「終了」を押下する。
- Eclipseの「プロジェクト」→「クリーン」を選択し、「すべてのプロジェクトをクリーン」にチェックを入れて「OK」を押下する。
※4.を行った際、インポートと同時にEclipseがXMLファイル検証のためにインターネットへ接続する。
その際に、ネットワーク環境によってはID とパスワードの入力のウィンドウが出力されるが、入力に失敗するとリトライを内部で繰り返しIDをロックされる可能性がある。入力の際は十分注意が必要である。
なお出力したウィンドウをキャンセルで閉じることもできるが何回も繰り返し要求されるので、最初は入力することをお勧めする。
以下にインポートした“terasoluna-batch-blank”のプロジェクト構成を示す。
- terasoluna-batch-blank
- source
- batchapps
- common
- AsyncBatchDaemonBean.xml
- AsyncBatchDaemonForCommonjBean.xml
- dataAccessContext-batch.xml
- DefaultValueBean.xml
- FrameworkBean.xml
- jobControl-sqlMap.xml
- jobRestart-sqlMap.xml
- jobResult-sqlMap.xml
- PlaceHolderConfig.xml
- sqlMapConfig.xml
- StopDaemonBean.xml
- ThreadPoolContext-AsyncBatch.xml
- ThreadPoolContext-batch.xml
- validationCommon.xml
- ValidationContext-AsyncBatch.xml
- ValidationContext-batch.xml
- validator-rules-ex.xml
- validator-rules.xml
- WorkManagerContext.xml
- WorkManagerTaskContext-batch.xml
- template
- ChunkTransactionBean.xml
- ChunkTransactionForControlBreakBean.xml
- ChunkTransactionForRestartBean.xml
- FileAccessBean.xml
- NoTransactionBean.xml
- PartitionChunkTransactionBean.xml
- PartitionChunkTransactionForRestartBean.xml
- PartitionNoTransactionBean.xml
- PartitionSingleTransactionBean.xml
- SequentialSingleTransactionBean.xml
- SingleTransactionBean.xml
- workQueueFactory.properties
- application-messages.properties
- ApplicationResources.properties
- commons-logging.properties
- jdbc.properties
- log4j.properties
- system-messages.properties
- common
- JREシステム・ライブラリー[jdk1.5.0_xx] (xはバージョン番号)
- sql
- create_table.ddl
- start_job.sql
- lib
また、本資料で使用する各設定ファイルの解説を下表に示す。
ファイル名 | 説明 |
common\dataAccessContext-batch.xml | データアクセス層のアプリケーションコンテキストを定義する。 |
common\DefaultValueBean.xml | チャンクサイズ等のデフォルト値を定義する。 |
common\FrameworkBean.xml | ハンドラ等のジョブに依存しないBeanを定義する。 |
common\PlaceHolderConfig.xml | プレースホルダの設定ファイルを指定する。 |
common\sql-map-config.xml | iBATISマッピング定義ファイルを設定する。 |
template\ChunkTransactionBean.xml | チャンク別トランザクションモデル(ジョブ分割無し、リスタート機能無し)のジョブBean定義ファイル雛形。 |
template\NoTransactionBean.xml | 非トランザクションモデル(ジョブ分割無し)のジョブBean定義ファイル雛形。 |
template\PartitionChunkTransactionBean.xml | チャンク別トランザクションモデル(ジョブ分割有り、リスタート機能無し)のジョブBean定義ファイル雛形。 |
template\FileAccessBean.xml | ファイルアクセス共通機能を定義する。ジョブBean定義ファイルにインポートして使用する。 |
application-messages.properties | アプリケーションで使用するメッセージを定義する。 |
ApplicationResources.properties | アプリケーションで使用するリソースファイルを定義する。 |
(5) データベースの設定
- ブランクプロジェクトとは別で用意されたチュートリアルプロジェクト“tutorial-batch”の中に“hsqldb.zip”がある。ここでは“hsqldb.zip”を“C:\”直下に展開する。
- データベースの起動“C:\hsqldb\terasoluna\startDB.bat”を実行する。
- データベースへの接続
- 2.のデータベースが起動した状態で、“C:\hsqldb\terasoluna\startDBManager.bat”を実行する。DBManagerが起動し、connect画面が表示される。ここでは、以下のように入力する。なお、このDBManagerによるデータベースへの接続はデータ確認のためなので、データベース起動の度に実行する必要はない。
- Recent : Recent settings...
- Setting Name : なし
- Type : HSQL Database Engine Server
- Driver : org.hsqldb.jdbcDriver
- URL : jdbc:hsqldb:hsql://localhost/terasoluna
- User : sa
- Password : なし
- 2.のデータベースが起動した状態で、“C:\hsqldb\terasoluna\startDBManager.bat”を実行する。DBManagerが起動し、connect画面が表示される。ここでは、以下のように入力する。なお、このDBManagerによるデータベースへの接続はデータ確認のためなので、データベース起動の度に実行する必要はない。
- データの確認
- 3.の接続後、画面左に以下のテーブルがあることを確認する。画面右のコンソール部分にSQLを記述し、“Execute”ボタンを押下するとデータが表示されることを確認する。
- テーブル“NYUKINTABLE”、カラム“ID”、“SITEN”、“KOKYAKUID”、“NYUKIN”、“TORIHIKIBI”
- テーブル“ZANDAKATABLE、カラム“KOKYAKUID”、“ZANDAKA”、“SAISYUTORIHIKIBI”
- テーブル“UNYOHIDUKETABLE”、カラム“UNYOHIDUKE”
- テーブル“ZANDAKARIREKITABLE”、カラム“SYORIBI”、“SYORIKENSU”
- 3.の接続後、画面左に以下のテーブルがあることを確認する。画面右のコンソール部分にSQLを記述し、“Execute”ボタンを押下するとデータが表示されることを確認する。
(6) 定義ファイル用フォルダーの作成
「第2章 バッチフレームワークチュートリアル」で使用するフォルダーを以下の手順で作成する。
- パッケージエクスプローラビューで、“terasoluna-batch-blank\batchapps”フォルダーを右クリックする。
- 「新規」→「フォルダー」を選択し、フォルダー名に“tutorial\UC0001”と入力し「終了」を押下する。
(7) 入力ファイルの取得
「2.3 ファイルアクセス機能を用いた単純なジョブ」で使用するファイルを以下の手順で取得する。
- パッケージエクスプローラビューで、“terasoluna-batch-blank”プロジェクトを右クリックする。
- 「新規」→「フォルダー」を選択し、フォルダー名に“inputfile”と入力し「終了」を押下する。
- 簡易サンプルプロジェクト“tutorial-batch\inputfile”内にある“nyukindata.csv”を 2.で作成した“inputfile”の直下にコピーする。
(8) ファイルの出力先を作成
「2.3 ファイルアクセス機能を用いた単純なジョブ」で作成されるファイルの出力先を以下の手順で作成する。
- “terasoluna-batch-blank”プロジェクトを右クリックする。
- 「新規」→「フォルダー」を選択し、フォルダー名に“outputfile”と入力し「終了」を押下する。
(9) jdbc.propertiesを編集
本チュートリアルではHSQLDBを使用するため、“terasoluna-batch-blank\batchapps”フォルダにある“jdbc.properties”を以下のように書き換える。
#ドライバー jdbc.driverClassName=org.hsqldb.jdbcDriver #URL jdbc.url=jdbc:hsqldb:hsql://127.0.0.1/terasoluna #ユーザー名 jdbc.username=sa #パスワード jdbc.password=
(10) “hsqldb.jar”ファイルのビルドパスへの追加
- “C:\hsqldb\lib”フォルダにある“hsqldb.jar”を“terasoluna-batch-blank\lib”にコピーする。
- “terasoluna-batch-blank”プロジェクトを右クリックし、「プロパティー」→「Javaのビルド・パス」→「ライブラリー」を選択する。
- 「JARの追加」を押下し、1.で追加した“hsqldb.jar”を選択する。
- 「OK」を押下し、完了する。
データベースの初期化手順
簡易サンプルプロジェクト“tutorial-batch”では以下のデータベースの初期化スクリプトを提供する。
スクリプト | 説明 |
tutorial-batch\sql\create_sampletable.sql | サンプルで使用するテーブルの削除および生成を行う。初期値は挿入されない。 |
tutorial-batch\sql\init.sql | 全テーブルのデータをクリアし、初期値を挿入する。 |
- DBManagerを起動する。
- 「File」→ 「OpenScript...」を選択し、任意のスクリプトファイルを開く。
- 画面右側のコンソール部にSQLが表示されることを確認し、“Execute”ボタンを押下しSQLを実行する。
備考
DBManagerの起動および設定については、「(5)データベースの設定」を参照のこと。