SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

GlassFishからアプローチするJava

GlassFishからアプローチするJava~入門編~
第4回「Webアプリケーションの作成 GlassFish管理コンソールを使う」

式言語とJSTLの組み合わせは美しい


ダウンロード サンプルコード (7.8 KB)

GlassFishの管理コンソールを操作

 そろそろGlassFishの説明がないのをご不満に感じられていると思います。具体的な例を交えたかったためここまで説明を引き延ばしてしまいました。DAOクラスの説明でConnectionクラスの取得方法を紹介しましたが、Servletのスレッドプール同様、Connectionもプールしておくことにより、Connectionの生成に要するコストを削減したいと思います。

管理コンソールを開く

 GlassFishの管理コンソールを開くには[サービス]-[サーバー]-[GlassFish v2.1]を選択し右クリックします。[管理コンソールを表示]を選択するとブラウザが開き管理コンソール画面が開きます。メモリが不足しているときは開かない場合があります。使っていないものを閉じてから再度開いてください。図19が管理コンソールの認証画面です。ユーザ名、パスワードは第1回でGlassFishのセットアップで設定したものを入力します。図20は管理コンソールの左ペインです。図21は右ペインです。基本的に左ペインのノードを選択すると右ペインに設定画面が表示されます。ただし、慣れないうちは右ペインに最初に表示される[共通操作]画面から目的の操作を選択することをお薦めします。

図19.GlassFish管理コンソール認証画面
図19.GlassFish管理コンソール認証画面
図20.GlassFish管理コンソール左ペイン
図20.GlassFish管理コンソール左ペイン
図21.GlassFish管理コンソール右ペイン
図21.GlassFish管理コンソール右ペイン

コネクションプーリングを使用可能にする

 コネクションとはアプリケーションサーバとデータベースとの接続に他なりませんが、それをクラス化したものがConnectionクラスです。一般にアプリケーションとデータベースを接続するには時間がかかります(時間がかかると言うことはリソースを大量に消費しているということであり、そういう意味で「コストのかかる処理」などと呼ばれます)。コネクションの場合も、あらかじめコネクションを生成・プールしておき、アプリケーションからコネクションの要求があれば、空いているコネクションを渡すという方法をとります。このようなプールをコネクションプール(接続プール)と呼び、仕組みをコネクションプーリングと呼びます。アプリケーションからコネクションプーリングを使用してコネクションを得るには以下の手順を踏みます。

  • GlassFishの管理コンソールを用いてコネクションプールを作成する
  • GlassFIshの管理コンソールを用いてコネクションプールにJDNI名を割り当てる
  • web.xml、sun-web.xmlでコネクションプールを定義する
  • JNDIのAPIを用いてDataSourceオブジェクトを取得する
  • DataSourceオブジェクトからConnectionオブジェクトを取得する

GlassFishの管理コンソールを用いてコネクションプールを作成する

 左ペインで[リソース]-[JDBC]と開き、[接続プール]を開くと図22のようにデフォルトの4つのコネクションプールが表示されます。[新規]ボタンをクリックすると、図23のように[新しいJDBC接続プール(ステップ 1/2)]画面が開きます。名前に「ImoshopPool」を入力し、リソースタイプは「javax.sql.DataSource」を選択します。[次へ]ボタンをクリックすると、図24のように[新しいJDBC接続プール(ステップ 2/2)]画面が表示されます。データソースクラス名に「com.mysql.jdbc.jdbc2.optional.MysqlDataSource」を入力します。実際の画面には「プール設定」、「接続検証」、「トランザクション」などの多くの設定項目があり、プロジェクトの特性に応じてチューニングする必要があります。今回はデフォルト値のまま[完了]ボタンをクリックします。図25のようにImoshopPoolが追加されているのが分かります。

図22.デフォルトのコネクションプール一覧
図22.デフォルトのコネクションプール一覧
図23.[新しいJDBC接続プール(ステップ 1/2)]画面
図23.[新しいJDBC接続プール(ステップ 1/2)]画面
図24.[新しいJDBC接続プール(ステップ 2/2)]画面
図24.[新しいJDBC接続プール(ステップ 2/2)]画面
図25.ImoshopPoolコネクションプール作成後のコネクションプール一覧
図25.ImoshopPoolコネクションプール作成後のコネクションプール一覧

 [新しいJDBC接続プール(ステップ 2/2)]画面でデータソースクラス名だけ入力し完了しましたが、実際は一番下にある[プロパティーを追加]ボタンをクリックし、接続に必要なプロパティーを指定する必要があります。ただし、プロパティーの追加はいつでも可能です。図25のコネクションプール一覧から作成したImoshopPoolのリンクをクリックすると図26のように[接続プールを編集]画面が表示され、一番右側の[追加プロパティー]をクリックし、[プロパティーを追加]ボタンをクリックすることでプロパティーの設定ができます。接続に必要なプロパティーは図27の通りです。

図26.[接続プールを編集]画面
図26.[接続プールを編集]画面
図27.接続に必要なプロパティー
図27.接続に必要なプロパティー

次のページ

この記事は参考になりましたか?

GlassFishからアプローチするJava連載記事一覧

もっと読む

この記事の著者

川久保 智晴(カワクボ トモハル)

haruプログラミング教室(https://haru-idea.jp/)主宰。COBOL、FORTRANで13年、Javaを中心としたWeb開発で11年。3つしか言語知らないのかというとそうでもなく、sed/awk、Perl、Python, PHP,  C#, JavaScriptなども一時期は業...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/4841 2010/02/27 14:46

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー