目次


3 層からなるリッチな Web アプリを手早く作成する: 第 1 回 データベースを作成する

Rational Application Developer を使用して、多層 Java EE アプリケーションを迅速に作成し、IBM Bluemix にデプロイする

Comments

この全 3 回からなるチュートリアル・シリーズでは、IBM Rational Application Developer for WebSphere Software、JPA (Java Persistence API)、EJB (Enterprise JavaBean)、REST Web サービス、そしてリッチな Web 2.0 フロンドエンドを実現する Dojo Toolkit を使用して、多層 Web アプリケーションを一から作成する方法を紹介します。シリーズの終わりで完全に機能するようになる Web アプリケーションでは、表にデータが表示されて、ユーザーが任意のセルをダブルクリックすると、そのデータを編集することができます。

このアプリケーションのアーキテクチャーでは、UI をサーバーから分離するために REST サービスを使用しています。また、適切に階層化されたエンタープライズ・アプリケーションを提供するために EJB と JPA を使用しています。これらの階層の中にはサンプル・アプリケーションには必要のない層もありますが、必要のない層も含めた理由は、さらに難しい問題領域に応じてスケーリングできる、適切に設計されたサンプル・アプリケーションを提供するためです。

このチュートリアルで説明するステップの概要は、以下のとおりです。

  1. データベースを作成する (第 1 回)
  2. データ・アクセス層と EJB 層を作成する (第 2 回).
  3. データを表示および変更するための REST サービスと、それらのサービスを使用するためのリッチな Web 2.0 インターフェースを作成する (第 3 回).
  4. アプリケーションを IBM Bluemix PaaS (Platform-as-a-Service) にデプロイする (第 3 回).

以下のアーキテクチャー概要図に、作成する必要のある 5 つのコンポーネントを示します。具体的には、リッチな Web ページと Web サービス (Web 層)、EJB エンティティーと JPA エンティティー (アプリケーション層)、データベース・テーブル (データ層) です。

Web 層、アプリケーション層、データ層をボックスで示す図
Web 層、アプリケーション層、データ層をボックスで示す図

前提条件

始める前に、以下の作業を完了しておいてください。

  1. Rational Application Developer for WebSphere Software 9.1.1 をインストールし、Liberty ランタイム・フィーチャーと Bluemix フィーチャーを含めます。試用版はダウンロードすることができます。
  2. Bluemix アカウントを登録します。Bluemix には無料トライアルが用意されています。

Bluemix 上でデータベース・サーバーを作成する

開発に使用するデータベース・サービスを Bluemix 上で作成します (これにより、データベース・ソフトウェアをインストールしてローカル・データベース・サーバーを作成しなくても、このチュートリアルに従うことができます)。

  1. ブラウザーで Bluemix にログインします。
  2. Bluemix カタログの「Boilerplates (ボイラープレート)」セクションで、「Java DB Web Starter」をクリックします。Bluemix のボイラープレートとランタイムのスクリーンショット
    Bluemix のボイラープレートとランタイムのスクリーンショット
  3. Java DB Web Starter の作成ページでは、右側でアプリケーションの名前を指定します (例えば、sracustomerapp)。この名前は、作成される Bluemix アプリケーションの URL の一部になるため、一意の名前でなければなりません。Java DB Web Starter ボイラープレート作成ページのスクリーンショット
    Java DB Web Starter ボイラープレート作成ページのスクリーンショット
  4. 「CREATE (作成)」をクリックします。「VIEW APP OVERVIEW (アプリの概要の表示)」をクリックすると、アプリケーションの詳細を示すページが表示されます。少しすると、アプリケーションが起動されたことを確認できるようになります。Bluemix アプリケーションの状況を示す画面のスクリーンショット
    Bluemix アプリケーションの状況を示す画面のスクリーンショット

    Liberty ランタイムとデータベース・サーバーがクラウド内で稼働状態になったので、そこにアプリケーションをデプロイすることができます。
  5. データベースに接続するために必要な情報を取得するには、「SQL Database」サービスのタイルで「Show Credentials (資格情報の表示)」をクリックします。データベース接続情報のスクリーンショット
    データベース接続情報のスクリーンショット
  6. 資格情報の画面に表示されている dbhostnameportusername、および password の値を書き留めます。
  7. Rational Application Developer を開きます。このソフトウェアを使用して、アプリケーションの作成を開始します。

データベースを設計して作成する

これから Rational Application Developer を利用してデータ・テーブルを作成し、テスト・データを生成します。

  1. Rational Application Developer で、「Data (データ)」パースペクティブに切り替えます (右上隅のパースペクティブ・アイコンを選択し、「Data (データ)」を選択してから「OK」をクリックします)。アクティビティーを有効にするよう促されたら、アクティビティーをすべて選択して「OK」をクリックします。
  2. 「Data Source Explorer (データ・ソース・エクスプローラー)」ビューで、「Database Connections (データベース接続)」を選択し、「New… (新規…)」を選択します。データベース・マネージャーとして「DB2 for Linux, UNIX and Windows」を選択します。次に、Bluemix データベース・サービスの資格情報から書き留めたデータベース名、ホスト名、ユーザー名、パスワードを指定します。必ず、「Save password (パスワードの保存)」オプションを選択してください。「Connection Parameters (接続パラメーター)」ダイアログ・ボックスのスクリーンショット
    「Connection Parameters (接続パラメーター)」ダイアログ・ボックスのスクリーンショット
  3. 「Test Connection (接続のテスト)」をクリックします。接続が成功したら、「Finish (終了)」をクリックします。
  4. CustomerDBDesign という名前の新規データ設計プロジェクトを作成します。それには、「File (ファイル)」 > 「New (新規)」 > 「Data Design Project (データ設計プロジェクト)」の順に選択し、プロジェクトの名前を「CustomerDBDesign」に変更して、「Finish (終了)」をクリックします。「New Data Design Project (新規データ設計プロジェクト)」ダイアログ・ボックスのスクリーンショット
    「New Data Design Project (新規データ設計プロジェクト)」ダイアログ・ボックスのスクリーンショット
  5. 新しい物理データ・モデルを作成します。このモデルで、必要なデータベース・テーブルを設計します。「Data Project Explorer (データ・プロジェクト・エクスプローラー)」ビューで「CustomerDBDesign」プロジェクトを右クリックし、「New (新規)」 > 「Physical Model (物理モデル)」の順に選択します。ウィザードで、ファイル名を「Customer Physical Model」に変更します。「Database (データベース)」を「DB2 for Linux, UNIX and Windows」に設定し、「Version (バージョン)」を「V10.5」に設定します。 新規データ・モデル・ウィザードのスクリーンショット
    新規データ・モデル・ウィザードのスクリーンショット
  6. 「Finish (終了)」をクリックします。
  7. スキーマの名前を変更します。「Data Project Explorer (データ・プロジェクト・エクスプローラー)」で、「Schema (スキーマ)」を選択し、「Properties (プロパティー)」ビューでスキーマ名を Bluemix SQL データベースのユーザー名 (例えば、user01145) に変更します。
  8. Customer という名前のテーブルを作成します。Diagram1 がまだ開かれていない場合は、「Data Project Explorer (データ・プロジェクト・エクスプローラー)」で「Diagram1」をダブルクリックして開きます。キャンバスをクリックして、表示されたポップアップで「add-table (テーブルの追加)」アイコン 「add-table (テーブルの追加)」アイコンのスクリーンショット をクリックします。テーブルの名前を Customer に変更します。
  9. テーブルをクリックして列のポップアップを表示します。主キー 主キー・アイコンのスクリーンショット を追加し、主キーの名前を CustNo にします。
  10. 列のポップアップを使用して通常の列をさらに 3 つ追加し、それぞれの名前を NameAddressCountry にします。完成後のデータ・モデル・ダイアグラムのスクリーンショット
    完成後のデータ・モデル・ダイアグラムのスクリーンショット
  11. 列タイプを設定します。テーブルを選択してから、「Properties (プロパティー)」ビューで「Columns (列)」タブを選択します。列のタイプを変更するために列をクリックします。CustNoINTEGER データ型にし、他の列はすべて Varchar 30 にします。テーブルの列のプロパティーのスクリーンショット
    テーブルの列のプロパティーのスクリーンショット
  12. モデルを保存します (Ctrl-S を押すか、「File (ファイル)」 > 「Save (保存)」の順に選択します)。
  13. スキーマとテーブルをデータベース用にフォワード・エンジニアリングします。「Data Project Explorer (データ・プロジェクト・エクスプローラー)」で、スキーマを選択して右クリックし、「Generate DDL (DDL の生成)」を選択します。最初のページで、「Quoted identifiers (引用符付き ID)」チェック・ボックスからチェック・マークを外します。ウィザードの「Options (オプション)」ページのスクリーンショット
    ウィザードの「Options (オプション)」ページのスクリーンショット
    「Next (次へ)」をクリックします。
  14. 「Objects (オブジェクト)」ページで、「Schemas (スキーマ)」チェック・ボックスからチェック・マークを外します。これにより、デフォルト・スキーマでデータベース・ユーザー用のテーブルが作成されます。
  15. 「Save and Run DDL (DDL を保存して実行)」ページで、「Run DDL on server (サーバー上で DDL を実行)」を選択してから「Next (次へ)」をクリックします。
  16. 「Connections (接続)」ページで、「SQLDB connection (SQLDB 接続)」 を選択してから「Next (次へ)」をクリックします。
  17. 「Finish (終了)」をクリックします。
  18. 「SQL Results (SQL 結果)」ビューで、テーブルが正常に作成されたことを確認します。「SQL Results (SQL 結果)」ビューのスクリーンショット
    「SQL Results (SQL 結果)」ビューのスクリーンショット
  19. 今度はデータを作成します。「Data Source Explorer (データ・ソース・エクスプローラー)」ビューで、「SQLDB」接続を選択し、右クリックして「refresh (最新表示)」を選択します。すると、Schemas フォルダーに、SQL データベース・ユーザー名が表示されるはずです。
  20. Tables フォルダーを開きます。このフォルダー内に、CUSTOMER テーブルが見つかるはずです。SQLDB 内の USER01145 スキーマの CUSTOMER テーブルを示す画面のスクリーンショット
    SQLDB 内の USER01145 スキーマの CUSTOMER テーブルを示す画面のスクリーンショット
  21. CUSTOMER を右クリックして、「Data (データ)」 > 「Edit (編集)」の順に選択し、いくつかの列を追加してから (Ctrl-S) で保存します。テーブル行エディターのスクリーンショット
    テーブル行エディターのスクリーンショット

次回の予告

今回は、Bluemix でホストされるデータベースを作成し、そのデータベースにテスト・データを入力しました。次は第 2 回に進んで、JPA エンティティー Bean、JPA マネージャー Bean、EJB からなるアプリケーション層を作成します。


ダウンロード可能なリソース


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Rational, Cloud computing, Java technology
ArticleID=1005888
ArticleTitle=3 層からなるリッチな Web アプリを手早く作成する: 第 1 回 データベースを作成する
publish-date=05142015