skillup

技術ブログ

Database Java

GlassFishでDB接続

投稿日:2015年4月13日 更新日:

JavaEEではアプリケーションサーバーとしてGlassFishを使いますが、先日、GlassFishを通さないとJavaEEでDBが動かせないということを知りました。そのためJavaEEではデータベースの情報をGlassFishに登録することが必要です。(Netbeansからもできますが、あえて動きを理解するためにGlassFishを直接操作したいと思います。)

JavaEEとDB接続

ローカルでGlassFishをインストールした場合、以下のURLでGlassFishの管理画面にアクセスできます。

http://localhost:4848/

ディフォルトではポートが4848なはずです。

こちらの画面でDBの設定を行います。

JDBC Connection Poolの設定

左記のメニューの「JDBC ConnectionPool」という場所がDBの接続情報を登録する場所になります。

PoolNameというのは任意の名称をつけて構いません。

Intorospecチェック無しで登録しましょう。

image001

Nextを押すと様々なプロパティを入力するページに飛びます。

こちらは様々なプロパティがありますが必要最低限のものは下記で問題ありません。

(一度全削除してから設定しても問題ありません。)

(上記情報はglassfish-resource.xmlがあればそちらを参考にすること)

ちなみにパスワードは空白ではダメなようです。設定を行い、問題なければ「save」を押したときに下記のようなメッセージ「New Values successfully saved」が出力されます。

失敗すると赤色のマークになります。その場合、設定情報が間違っていないかもう一度確かめましょう。

image003

aaa

上記画面で「ping」を押して「ping succeeded」がでればOKです。

Linux環境で行う場合は、MySQLのドライバを別途通す必要が出てきます。

詳しくはCentOS上にglassfish構築+arquillianテストの「glassfishからDBへの接続」に記述してあります。

JDBC Resourceの設定

接続プールを設定したあとはこれを元に「JDBC Resource」の設定を行います。

これはJavaとGlassFishのDB情報をつなぐ窓口になります。

JNDIという名称は任意の名称をつけて問題ありませんが、Pool Nameということろは先ほど設定したJDBC Connection Poolの名称を入力します。

この情報を入力すれば「OK」を押しましょう。これでJavaEEとDBの接続をGlassFishを通して行うことができます。

image005

persistence.xmlの設定

上記作業ができたら次はJavaEEでプロジェクト画面に移動し、持続性ユニット(persistence.xml)を作成します。

永続性プロパイダはEclipseLinkを使用し、データソースを先ほど作成したJDBCリソースの名称を選択します。

(この時点でプルダウンにはいってなければ認識されていません。)

また表生成戦略とは作成を選びますと、テーブルがない場合、自動でエンティティを見て生成してくれます。

ドロップして作成の場合、新規データが作られるたびにテーブルを初期化します。

image007

以上でJavaEEとDB接続は終了です。

Linuxで動かすときはこれをコンソールからやることになりますね。

-Database, Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

データベースの権限設定

データベースを作成するときに

と入力していますが、ほぼ機械的にこれを売っているのでこれを機にどんな使い方があるのかを調べてみました。 …

no image

MySQLの大文字、小文字問題について

MySQLでテーブルを作る際にカラムに重複を許さない制約(unique)を振ることがあると思います。 数字の場合は問題ないのですが、文字列の場合、なんと英語の大文字と小文字が区別されません。 つまりa …

no image

型パラメータに関して その2

Javaでオブジェクト指向に基づいたコーディングをするために必須であり、最初の難関だったのが型パラメータでした。 Contents1 型パラメータが必要なケース2 型パラメータの制限3 クラスインスタ …

no image

JSPでのAjax(dwr使用)

JSPネタ3本目。 Ajaxです。 こちらも独自のライブラリを使うようですね。 drwというものが有名のようです。 Contents1 dwr1.1 pomでの記述1.2 web.xml1.3 dwr …

no image

JSFのifタグ

JSFは基本的にテンプレートなので、 HTML+CSS+JavaScript ロジック側からの変数の出力 ループ処理 以上のことをさせることはあまりありません。 が、まれに条件分岐なんかをさせたいとき …

アーカイブ