JavaDBの使いかた
JavaDBに新しいデータベースを設定する
GlassFishには、リレーショナルデータベース管理システムとしてJavaDB (Apache Derby)が付属しています。ここでは、JavaDBに新しいデータベースをつくる方法について解説します。
環境変数の設定
以下の例では、GlassFishをインストールしたディレクトリに、環境変数"JAVAEE_HOME"を設定しています。
コネクションプールを作成する
まずはじめに、リレーショナルデータベースにアクセスするためのコネクションを用意します。
- GlassFishを起動して、http://localhost:4848/にアクセスします。
- ログインします。デフォルトではユーザ名がadminで、パスワードがadminadminです。
- 左側メニューの"Resources"を選択します。
- "JDBC"→"Connection Pools"を選択します。
- "New"をクリックします。
- "Name"には適切な名前を入力します。今回は"LibraryPool"にしましょう。
- "Resource Type"では"javax.sql.DataSource"を選択します。
- "Database Vendor"では"JavaDB"を選択します。
- "Next"をクリックします。
- "Properties"を編集します。
- "User"と"Password"にそれぞれ"APP"と入力します。
- "ServerName"には適切な名前を入力します。今回は"localhost"にします。
- "DatabaseName"には適切な名前を入力します。今回は"library"にします。
- "ConnectionAttributes"に";create=true"と入力します。
- "Finish"をクリックします。
JDBCリソースの設定
ここでは、作成したコネクションにJNDI名をつけます。
- 左側メニューの"JDBC Resources"を選択します。
- "New"をクリックします。
- "JNDI Name"には適切な名前を入力します。今回は"jdbc/library"にします。
- "Pool Name"には、先に作成した"LibraryPool"を選択します。
- "OK"をクリックします。
JavaDBへのアクセス
次に、JavaDBにアクセスしてみましょう。ここでテーブルを作成します。
- JavaDBは"asadmin start-database"コマンドで起動できます。
- %JAVAEE_HOME%\javadb\frameworks\NetworkServer\binに移動します。
- ij.bat (Unix系OSの場合はij.ksh)を編集します。
- "DERBY_INSTALL="の後にJavaDBがインストールされているディレクトリを指定します。例えば"%JAVAEE_HOME%\javadb"です。この項目のコメントアウトを解除し、保存します。
- コマンドプロンプトなどを使ってij.bat (ij.ksh)を起動します。
- プロンプトが表示されたら、SQLを入力できます。ファイルに書かれたSQLを実行する方法を説明します。'/path/to/sqlfile.txt'のところを適切なパス名に置き換えてください。
run '/path/to/sqlfile.txt';