
オブジェクト指向データベースの復権(後編)
ObjectStoreとCachéでOODBへ踏み出そう Page 4
2004/10/1
山田祥寛
[4]データベースにオブジェクトを登録する
データ(オブジェクト)を格納するための準備ができたところで、新規にデータを登録してみることにしよう。以下のようなJavaアプリケーションを用意してみてほしい。
import wings.*; |
| リスト9 CreateDb.java(新規データを登録するJavaアプリケーション) |
CacheDatabase#getDatabaseメソッドには、第1引数から接続文字列、ユーザー名、パスワードを指定する。接続文字列の構文は以下のとおりだ。
jdbc:Cache://ホスト名:ポート番号/ネームスペース名 |
オブジェクトを永続化するには、あらかじめ用意された_saveメソッドを利用するだけでよい。これで、BookオブジェクトがCachéデータベースに格納された。
[5]データベースからデータを取得する
次に、手順[4]で格納されたオブジェクトを取得する方法を見てみよう。
import wings.*; |
| リスト10 ReadDb.java(格納されたオブジェクトのデータを取得するJavaアプリケーション) |
_openメソッドは、先述の_saveメソッド同様、永続化クラスにあらかじめ用意されたメソッドで、指定された接続先から指定されたIDをキーに、オブジェクトを取得するものだ。いったんデータを取得した後は、通常のオブジェクトを操作するのとまったく同じ要領でプロパティにアクセスすることができる。もちろん、取得したデータのプロパティ値を変更した後、_saveメソッドをコールすれば、更新処理も可能だ。
以上のコードをコンパイルの後、実行すると、以下のような結果が得られるはずだ。
> java ReadDb |
| リスト11 実行結果 |
以上、ごく基本的なCachéでのデータの出し入れを見てきたが、もちろん、これがCachéのすべてではない。より詳細な情報を知りたい方は、Cachéスタジオのメニューバーから[ヘルプ]−[Cachéオンラインドキュメント]でチュートリアルを参照することができる。
前編でも紹介したとおり、Cachéの特徴の1つは、データベースにアクセスするためのさまざまなインターフェイスを用意している点にある。例えば、Cachéに対して、JDBC(SQL)経由でアクセスするには、以下のようにすればよい。コードをご覧いただければ分かるように、これならばOODBであることを意識する必要はほとんどない。
import com.intersys.objects.*; |
| リスト12 JdbcCache.java(JDBC経由でSQLアクセスするJavaアプリケーション) |
また、Cachéには、Webアプリケーションを簡単に作成するためのCSP(Caché Server Pages)が用意されているのも忘れてはならない。ごく基本的な登録/検索アプリケーションであれば、Cachéスタジオのウィザード画面を利用するだけで作成できてしまう。ここでは、簡単な登録/検索アプリケーションを作成してみよう。
メニューバーの[ファイル]−[新規作成]から[新規作成]ダイアログを立ち上げ、[Caché Server Pages]を選択する。CSPファイルの骨組みが自動生成されるので、次いで、[挿入]−[フォームウィザード]を選択してみよう。[Caché Web Form Wizard]が起動したはずだ。後はウィザードに従って、対象となる永続化クラス、使用するプロパティ、ラベル名など、必要なパラメータを選択していけばよい。
![]() |
| 図2 Caché Web Form Wizard(クリックで拡大します) |
ウィザードを完了したら、[表示]−[ブラウザで表示]で作成したフォームを確認できる。登録/更新/検索とひととおりの処理も実行可能な状態であるので、一度、試してみてほしい。
![]() |
| 図3 ウィザードで作成した登録/検索画面(クリックで拡大します) |
☆ ☆ ☆
本稿を読んで、概念的にしか理解していなかったオブジェクト指向データベースの世界が、少しは身近な存在に感じられただろう。RDBと異なり、SQLもオブジェクト・マッピングも不要であることから、これまでRDBアプリケーションに慣れてきた読者にとっては、ある種の違和感を覚えたかもしれない。しかし、その違和感を乗り越えてしまえば、むしろオブジェクトをオブジェクトのままに扱えるOODBの世界の「自然さ」が実感できるに違いない。
本稿で紹介した内容はOODBのごく基本的な部分にすぎないが、これを機会にどんどんOODBに触れてみてほしい。RDBを前提とした開発は、条件によっては決して唯一の解ではないことがきっと分かるはずだ。(連載完)
| 4/4 |
| Index | |
| 連載:オブジェクト指向データベースの復権(後編) ObjectStoreとCachéでOODBへ踏み出そう |
|
| Page
1 ObjectStoreのサンプルアプリケーション構築 ・サンプル動作の前提条件 ・[1]PSE Proをインストールする ・[2]環境変数を設定する ・[3]PSE Proに格納するための永続化クラス「Book」を用意する ・[4]ポストプロセス処理を行う |
|
| Page
2 ・[5]データベースを生成する ・[6]データベースからデータを取得する |
|
| Page
3 Cachéのサンプルアプリケーション構築 ・サンプル動作の前提条件 ・[1]Cachéをインストールする ・[2]環境変数を設定する ・[3]Cachéに格納するための永続化クラス「Book」を用意する |
|
| Page
4 ・[4]データベースにオブジェクトを登録する ・[5]データベースからデータを取得する Cachéへのさまざまなアクセス方法 |
|
| オブジェクト指向データベースの復権 |
TechTargetジャパン
- IBMが歴史を変える!? 新カテゴリの製品を発表 (2012/5/25)
IBMは新たな製品カテゴリとなる「PureSystems」を発表。DB2 10とビッグデータの関係、PureSytemsの斬新さはどこかに迫ります - クラウド時代のデータ処理を支える分散KVSの可能性 (2012/5/23)
現在、高速データ処理の主流はインメモリ型データ処理だが、別の方法として分散KVSが注目を集めている。今回は分散KVSについて話を聞いた - 複数の表からデータを取り出して表示させる(2) (2012/4/23)
前回はSQLの基本的な結合構文について説明しました。今回は、より複雑な自己結合や外部結合について説明します - SQL Server、OOWにIQ、盛りだくさんの4月 (2012/4/20)
オラクルオープンワールドが3年ぶりに東京で開催されたほか、SQL Server 2012が提供開始されるなど、今月は話題が盛りだくさんです
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -


