アプリケーション構成
今回作成するアプリケーションの構成、動作イメージとしては、下図のようになります。
前回の「イベントループとワーカー」の説明で描いた図と、ほぼ同じ構成になります。以前の図のJdbcModuleに相当する部分は、公開されているmod-jdbc-persistorをそのまま利用します。
環境準備
第1回と同じようにvertx-gradle-templateをベースにクラスや設定を追加していく形で作成していきます。データベース(DB)はH2DBを組み込みのメモリーDBとして使用します。
H2DBの用意
H2DBのサイトからzipファイルをダウンロードして展開し、bin/h2-1.4.XXX.jarを用意しておきます。
テンプレートのクローン
まずは、vertx-gradle-templateを利用しますが、第1回の記事の時からtemplateが更新されていますので、分かりやすく新たに名前を変更してcloneするところから開始します。
git clone https://github.com/vert-x/vertx-gradle-template.git dmm-vertx-example
H2DBのjarファイルの配置
dmm-vertx-exampleディレクトリの配下にsrc/main/platform_libというディレクトリがあります。このディレクトリにh2dbのjarファイルを配置します。ここにjarファイルを配置することで、gradleからテスト実行する際にプラットフォームクラスローダーからロードされる対象となります(gradle/vertx.gradleファイルの中でクラスパスに追加されています)。
vertxコマンドで実行する際には、通常のjavaコマンドで実行する場合と同様、環境変数 CLASSPATHで指定しておく必要があります。若干面倒なので、こだわる必要がなければ${VERTX_HOME}/lib配下に配置するのが簡単です。
IntelliJ IDEAにプロジェクトを取り込むと下図のようになります。