スマートデバイスアプリ開発のあれやこれや

Glassfish 4.1 + MySQL でデータソース定義

ソースコードからデータベースに対して直接コネクションを張ることも出来るが
どうもアプリ→データベースで接続&切断を行うのはコストが高いらしい……。
なので、お作法としてはAPサーバにデータベースとのコネクションを持たせておいて
アプリはAPサーバからコネクションを拝借する方がベターなのだという!
(アプリ全体で接続数は◯◯個とかの制限をかけてコネクションの使い回しが可能)

今回は以下のレシピでAPサーバにデータソース定義をしてみようと思う。

1. MySQL用のJDBCコネクタを入手する。

GlassfishMySQLにアクセスためにはJDBCコネクタが必要である。
Oracleの以下のサイトから入手する。

MySQL :: Download Connector/J

zipファイルに同梱されているmysql-connector-java-5.0.8-bin.jarを
glassfish4/glassfish/domains/domain1/lib/extにコピーしておく。

2. Glassfishの管理コンソールを表示する

Glassfishが起動した状態でhttp://localhost:4848を開くと管理コンソールが表示される。

f:id:cross-xross:20150223203700p:plain

この管理コンソールは今回解説するデータソースの定義以外にも
サーバのログの確認やクラスタ構成の設定等もGUIから出来るようだ。

3. 管理コンソールからJDBC Connection Poolを設定する

左メニューからJDBCJDBC Connection Poolを選択する。
「New...」ボタンを押下し、接続情報を入力していく。

  • Pool Name: 任意(今回はmysqlPoolにしておく)
  • Resource Type: javax.sql.DataSource
  • Database Driver Vendor: MySQL


Additional Propertiesには最低限以下の情報を入力する。

  • DatabaseName: 接続先DB名
  • User: 接続用のDBユーザ
  • Password: 接続用のDBユーザパスワード
  • ServerName: サーバアドレス

以上の情報を入力して「Finish」ボタンを押下する。

4. 接続確認する

Ping」ボタンを押下して成功メッセージ出れば完成。

f:id:cross-xross:20150225215657p:plain