川久保 智晴 [著] 2010/02/24 14:00

サンプルコード 7.98 KB
1 2 3 4 5 6 7 →

はじめに

 この連載では、「GlassFish」という製品を利用して、Java言語に親しんでもらうことを目的としています。第4回目の今回は、サンプルWebアプリケーションのカタログ部分の作成を通して、Data Access Object(DAO)パターンやGlassFishの管理コンソールの操作などについて触れていきます。

対象読者

  • Javaでなにかしらのアプリケーションを作成したことのある方
  • Javaの変数の宣言や、if文・for文・while文の制御文など簡単な文法を知っており、アプリケーションを作成したことのある方

 オブジェクト指向プログラミングができなくとも構いません。徐々に学んでいければと考えています。また、学びやすいWebアプリケーションをサンプルとするので、Webアプリケーションとは違った分野を勉強したい方には当連載は向いていません。

本稿で想定する主要技術のバージョン

 Java EE 5を使用するため、主な技術要素のバージョンは以下の通りです。EJBに関しては応用編で扱う予定です。

  • Servlet:2.5
  • JSP:2.1
  • JSTL:1.2
  • JTA:1.1
  • EJB:3.0(応用編)

Webアプリケーションの作成

 第3回まで読んでいただいた方はいつになったらGlassFishを使ってWebアプリケーションを作成するんだろうかと感じられたことだと思います。Webアプリケーションは「Hello, World」をブラウザに表示するだけでは何も身につけることができないため、第2回と第3回でWebアプリケーションの基礎である、ServletとJSPについて説明しました。準備は整いました。慌てず、じっくりとWebアプリケーションを構築していきましょう。

 架空のネットショップである「芋焼酎酒店」を作成していきます。「芋焼酎酒店」は以下の仕様を満たすものとします。

  • 芋焼酎のカタログを表示する
  • カタログから銘柄を選択し、買い物かごに入れる
  • 買い物かごには購入予定の芋焼酎の銘柄、単価、本数を1明細として銘柄分の行をリストとして表示される
  • 買い物かご明細の本数は増減できる。ただし、0本になった場合、買い物かごから削除する
  • 買い物かごは明細だけでなく、送料、合計金額を表示する
  • 芋焼酎酒店は認証機能を持つ

構築スケジュール

  1. カタログ作成:
    第4回
    (今回)。DAO(Data Access Object)のスケルトンを作成する。当DAOは銘柄の一覧を返すためのクラス。最初はデータベースにアクセスせず、静的に保持しているオブジェクトのArrayListを返す。ServletはDAOを呼び出し、戻り値をセッション中に埋め込みJSPに渡す。JSPは式言語、JSTLのみを使いカタログをブラウザに表示する。最後にスケルトンとして作成したDAOを実際のデータベースに接続する。
  2. 買い物かご作成:
    第5回、第6回
    では上記仕様の買い物かごの機能を作成する。買い物かごはセッションオブジェクトに格納し、買い物かごへの追加・削除・更新があるたびに買い物かごテーブルの内容を書き換える。第5回では買い物かごを実装するのに必要なテーブルを準備し、買い物かごへの追加機能を実装する。第6回は削除・更新機能を実装する。
  3. 認証機能作成:
    第7回
    では認証機能を持たせることで、複数の客の管理を行えるようにする。レルムという概念を紹介するが第7回ではJDBCレルムを使用する。

 第7回で入門編の最終回とします。応用編はきりがないくらい話題が多いため、厳選して紹介できればと考えています。JBI(Java Business Integration)まで説明できればと思っています。

 作成したものをアプリケーションサーバに配置するにはデプロメント・ディスクリプタ(web.xml)を記述する必要がありますが、その都度説明を追加します。


1 2 3 4 5 6 7
→
INDEX
GlassFishからアプローチするJava~入門編~ 第4回「Webアプリケーションの作成 GlassFish管理コンソールを使う」
Page1
はじめに
Webアプリケーションの作成
カタログ作成
疑似DAOクラスから本物のDAOクラスを作成
GlassFishの管理コンソールを操作
おさらい
プロフィール
川久保 智晴 カワクボ トモハル

COBOLで13年、Javaを中心としたWeb開発で10年。2つしか言語知らないのかというとそうでもなく、sed/awk、Perl、Pythonなども一時期は業務で使えるレベルまで達したと思っています(自己申告)。

最近はプロジェクトマネージャやソフトウェアアーキテクトという一見相容れない仕事を繰り返してきましたが、実は両者の技術は密接に絡んでいるというのが最近考えていることです。プロジェクトマネージャがあまりにも技術に疎かったり、ソフトウェアアーキテクトがあまりにもコストに鈍感であったりするのを見るにつけ思いが深まっています。

以前はお酒が大好きでいろんなところに出没していましたが、今はおとなしく家飲みに徹しています。土日は20キロ近くジョギングしたりして爽やかなIT技術者を目指しています。2度と徹夜の日々がなくなることを祈りつつ生活しています。


注目の求人情報
システムエンジニア/IT事業拡大中のベンチャー企業
Web・オープン系システムの設計・開発 開発・テスト・保守業務。使用言語はJava等。...
生産管理・工程設計/ヒューネックス株式会社
■ゲームの企画・仕様を制作し、スタッフの進捗管理を行います。 ■コストを意識して、ライン全体の進...
コンサルタント/ウルシステムズ株式会社
・システムの要件定義と業務モデルをもとに個々のシステムのアーキテクチャを設計し、基幹業務システム...

(最新日付順)
名前(ゲストの方もコメントをどうぞ):*
アイコン:
なし

内容(テキストのみ1200文字まで):*

投稿規定に同意して

スポンサーサイト

この記事のトラックバックURL: