検索
連載

悲観もあれば楽観もある「トランザクション」の常識企業システムの常識をJBossで身につける(8)(3/4 ページ)

企業向けアプリケーションのさまざまな“常識”をJavaのオープンソース・フレームワーク群である「JBoss」から学んでいきましょう。企業システムを構築するうえでの基礎となる知識をリファレンス感覚で説明していきます。初心者から中堅、ベテランまで大歓迎!

PC用表示 関連情報
Share
Tweet
LINE
Hatena

JTA実装のサンプルアプリケーションを作る

 ここではサンプルとしてサーブレットを作成し、JBoss TransactionsのJTA実装を見ていきましょう。

プロジェクトの作成

 まず、新規のプロジェクトを作成します。Eclipse上で[ファイル]→[新規]→[プロジェクト]を選択します。

図5 プロジェクトの新規作成
図5 プロジェクトの新規作成

 [動的Webプロジェクト]を選択し、[次へ]をクリックします。

図6 [動的Webプロジェクト]を選択
図6 [動的Webプロジェクト]を選択

 次の画面で、下記のように入力し、[完了]をクリックします。

図7 動的Webプロジェクトの設定
図7 動的Webプロジェクトの設定
  • [プロジェクト名]sampleJTA
  • [Target Runtime]JBoss 5.0 Runtime
  • [動的Webモジュールバージョン]2.5
  • [構成]JBoss 5.0 Runtime デフォルト構成

サーブレットのクラスを作成

 次に、サーブレットのクラスを作成します。[Javaリソース]のsrcの部分で右クリックして、[新規]→[サーブレット]を選択します。

図8 作成されたプロジェクトとサーブレットの作成
図8 作成されたプロジェクトとサーブレットの作成

 下記のように入力して、[完了]をクリックします。

図9 [サーブレット作成]
図9 [サーブレット作成]
  • [Javaパッケージ]sample
  • [クラス名]SampleServlet

 作成したSampleServlet.javaは、下記のように記述します。このサーブレットを呼び出すと、データベースにデータを保存するようにしています。

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Statement;
import java.util.Date;
 
import javax.naming.InitialContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;
import javax.transaction.UserTransaction;
 
/**
 * Servlet implementation class SampleServlet
 */
public class SampleServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
    
    public SampleServlet() {
        super();
    }
 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
    throws ServletException, IOException {
        request.setCharacterEncoding("Shift_JIS");
        response.setContentType("text/html;charset=Shift_JIS");
        PrintWriter out = response.getWriter();
        out.println("処理日付と時間: " + new Date());
 
        // データベース更新処理
        transaction();
    }
}
コード2 SampleServlet.java

 次ページでは最後に、データソースの設定やテーブル作成を行い、実際に動作確認してみましょう。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る