Java DBとは?


2008年に新たに登場したEclipse 3.4「Ganymede」。ここではさまざまな機能の追加や改良が行われています。中には、従来とはかなりインターフェイスなどが変わったために「よくわからない」というものもあることでしょう。

今回は、データベース関連の機能について説明をしましょう。Eclipseのサーバサイド向けパッケージ「Eclipse IDE for Java EE」では、データベースにアクセスするための機能が搭載されています。これを利用することで、Eclipse内からデータベースを使うことができます。

ここでは、一例として「Java DB」を利用してみることにしましょう。Java DBは、Java 6以降、JDKに標準で搭載されているpure Javaなデータベースプログラムです。直接、データベースファイルにアクセスして利用することもできますし、データベースサーバとしてプログラムを起動し、そこにアクセスして利用することも可能です。このJava DBは、Apache Foundationにより「Derby」という名前で開発されていたもので、それが現在、Javaの標準的なデータベースとして組み込まれるようになったのですね。既にオープンソースのデータベースとして実績のあるものですから、機能や安定性もそれなりにこなれており、安心して使うことができます。

Java DBの利用については、以前、「Java 6のJava DBでデータベース 」という記事で紹介しました。が、Eclipseがバージョンアップし、内容が変わってしまいました。そこで今回、改めて「GanymedeによるJava DBの利用」という形でまとめなおすことにしました。

まずは、Java DBを使えるようにしましょう。ここでは、JDK 6を使って説明を行います。Java DBのプログラム自体は、JDK 6をインストールしていれば組み込まれますが、標準では、Java DBを利用するためのライブラリなどは利用できる状態になっていません。Java DB関係のファイルは、標準では「C:Program FilesSunJavaDB」にインストールされています。この中の「lib」フォルダの中に、Java DBで利用するプログラム類がJarファイルとしてまとめられています。

Program FilesのSunJavaDB内に、Java DB関係のファイルがまとめられている。

とりあえず、「Javaのプログラム内からJava DBにアクセスする」ということに限定して考えるなら、以下の2つのファイルがあればよいでしょう。

derby.jar――Java DBのデータベースファイルにアクセスするために必要なものです。
derbyclient.jar――Java DBをデータベースサーバとして起動したとき、クライアントとしてアクセスするためのものです。

この2つのファイルを、CLASSPATHが通っている場所にコピーするか、あるいは環境変数のCLASSPATHに追加するなどして利用可能な状態にしてください。一般的には、JREのlibext内に入れておけばよいでしょう。

なお、これ以降ではEclipse Ganymedeを使った説明となりますが、ここでは「Pleiades」で日本語化したものを使って説明を行います。


データベース利用に必要な作業


Ganymedeでは、データベースの利用はいくつかの設定やファイルなどを組み合わせて行います。これらは、大雑把に整理すると以下のようになります。

ドライバー定義――データベースにアクセスするためのドライバープログラムの定義です。
接続プロファイル――データベースへの接続に関する設定です。
SQLファイル――SQLコマンドを実行するために用意するファイルです。

この3つの設定やファイルに加え、実際の利用の際にはデータ・ソース・エクスプローラーでの操作を行う必要があります。それらの働きや使い方を理解して、初めてEclipseからデータベースが利用できるようになります。少々面倒くさい気がしますが、ドライバー定義などは、使用するデータベースの定義を一通り用意すれば、後はそれらから必要なものを選択するだけですし、接続プロファイルも、データベースを利用する際に1つ用意すれば、後はそれを使っていつでも接続を行えます。

ですから、まずはドライバー定義を作成し、それから接続プロファイルを用意する、というところまで作業をしておけば、後はいつでもデータベースを利用できるようになると考えてよいでしょう。