SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

SQLも使えるオブジェクトデータベース「CACHE'」を知る

第4回 JalapeñoによるJavaアプリケーション開発 前編

SQLも使えるオブジェクトデータベース「CACHE'」を知る 4


  • このエントリーをはてなブックマークに追加

第4~5回では、Cache' 2007.1から正式サポートされるJalapen~o(ハラペーニョ)テクノロジによるJavaアプリケーション開発について解説します。第4回の今回は、Jalapen~oテクノロジの概要と、POJOクラスによるアプリケーション開発の仕組みについて説明します。

  • このエントリーをはてなブックマークに追加

はじめに

 連載の第4回、第5回では、Caché 2007.1から正式サポートされるJalapeño(ハラペーニョ)テクノロジによるJavaアプリケーション開発について、前半・後半に分けて解説します。今回は、Jalapeñoテクノロジの概要と、POJOクラスによるアプリケーション開発の仕組みについてです。

対象読者

  • アプリケーション・システム開発をしている人
  • データベース関連の開発およびメンテナンスをしている人
  • JavaやC#でプログラミングしている人

Jalapeñoテクノロジとは

CACHÉによるPOJOサポート

 Jalapeñoテクノロジとは、O/Rマッピング無しでJavaクラスに永続性を与える技術のことです。Javaクラスとは独立し、Cachéによってオブジェクトへのアクセスメソッドが自動生成されます。そのため、開発者はデータを格納・参照する方法について考慮する必要がなく、POJOに永続性を与えることができます。また、Cachéの統一データアーキテクチャも何ら変わりはなく、システム管理ポータルを使って、SQLとしてPOJOデータにアクセスが可能です。

 なお、JalapeñoはCaché 5.2にも含まれていますが、開発者向け評価用となっていて、正式サポートは近日中にリリースされるCaché 2007.1からになります。読者の方には、現在インターシステムズのWebサイトで評価目的で提供されているCaché 5.2を試用している方もいると思いますが、Caché 2007.1が提供された後は、Caché 5.2からのアップグレードではなく、新規インスタンスとしてインストールすることをお勧めします。ただし、Caché 5.2で作成したクラスを引き続き利用したい場合には、Caché 2007.1をアップグレードインストールし、ターミナルから次のコマンドを入力して、Cachéクラスを更新する必要があります。

User>do $system.OBJ.Upgrade()
User>do $system.OBJ.CompileAll()
Cache'ターミナル ― Cache'クラスのアップグレード
Cache'ターミナル ― Cache'クラスのアップグレード

Java永続クラスとCACHÉとの関係

 CachéがPOJOに永続性を与える方法は、第3回で解説したように2つのステップからなります。POJOの定義からJalapeño SchemaBuilderを使ってデータベーススキーマを生成するステップと、Javaアプリケーション内にJalapeño ObjectManagerを組み込み、JavaオブジェクトをCachéに保存するステップです。では、それぞれについて詳しく見てみましょう。

POJOクラスによる開発 Part 1

 本連載では、Javaの開発環境として「Eclipse 3.2.0」を、JREシステムライブラリは「jre 1.5.0」を使っています。Eclipseのワークスペースは「C:\Projects」、プロジェクト名は「Examples」、パッケージは「basic」です。ここではEclipseの具体的な使い方は割愛いたしますが、こうした統合開発環境を使わなくても、Cachéのデータベーススキーマ生成は可能です。お使いの環境に合わせて、適宜、下記の内容を読み替えてください。

Jalapeño SchemaBuilderによるデータベーススキーマの生成

  1. まず、POJOクラスを作成しましょう。このクラスは、インターフェイスを実装せず、他のクラスを拡張しない純粋なPOJOです。
  2.  
    Eclipse ― クラス定義
    Eclipse ― クラス定義
     
    このContact.javaをコンパイルしてContact.classを生成しておきます(なお、自動ビルドがONになっている状態ではコンパイルの必要はありません)。
  1. 続いて、CacheDB.jarがあるディレクトリでコマンドプロンプトを開き、次のようにSchemaBuilderウィザードを起動します。
  2.  
    >java com.jalapeno.tools.SchemaBuilderwizard
    
     
    コマンドプロンプト画面にてSchemaBuilderを実行
    コマンドプロンプト画面にてSchemaBuilderを実行
     
    ただし、CacheDB.jarがclasspathに含まれている必要があります。classpathに含まれていない場合は-cpオプションでCacheDB.jarを指定してください。
     
    >java -cp c:\Program Files\CacheSys\Dev\java\lib\JDK15\CacheDB.jar
     com.jalapeno.tools.SchemaBuilderwizard
    
  1. SchemaBuilderウィザードが実行されますので、システム管理ポータルで設定してある「_SYSTEM」ユーザーのパスワードを入力したのち[Show Namespaces]をクリックして、ネームスペース「USER」を表示させます。続いて、[Next]をクリックします。
  2.  
    SchemaBuilderウィザード起動画面
    SchemaBuilderウィザード起動画面
  1. データベーススキーマの生成方法を指定する画面になりますので、それぞれ次のように指定します。
  2.  
    • [Introspection Options]―[Use Annotations]
    • [Default Access Level]―[private]
    • [Default Access Type]―[fields]
    • [Exclude prefixes]は空欄のまま
    • [Attempt to merge with existing Caché’ classes]のチェックは付けない
     
    下図のように指定したら[Next]をクリックします。
     
    SchemaBuilderウィザード ― データベーススキーマの生成方法指定画面
    SchemaBuilderウィザード ― データベーススキーマの生成方法指定画面
     
  3. この画面でユーザー作成のプロジェクトのタイプを指定します。[Select Item Type to Project]の[Select directories or classes]をチェックして、[Next]をクリックします。
  4.  
     
    SchemaBuilderウィザード ― プロジェクトのタイプ指定画面
    SchemaBuilderウィザード ― プロジェクトのタイプ指定画面
     
  5. 画面の[Select classpath]をクリックして、先ほど生成したContact.classがあるクラスパスを指定します。ここでは、「c:\Projects\Examples\build」を指定しています。[Next]をクリックしてください。
  6.  
    SchemaBuilderウィザード ― POJOクラスのパス指定画面
    SchemaBuilderウィザード ― POJOクラスのパス指定画面
     
  7. 画面の左側のパネルから「Contact.class」を選択し、[Add]ボタンをクリックして右側パネルに追加します。[Generate]ボタンをクリックすると、コンパイルが開始され、Cachéに「Contact」のデータベーススキーマが追加されます。[Finish]をクリックしてウィザードを終了させてください。
  8.  
    SchemaBuilderウィザード ― データベーススキーマの生成
    SchemaBuilderウィザード ― データベーススキーマの生成

次のページ
まとめ

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
SQLも使えるオブジェクトデータベース「CACHE'」を知る連載記事一覧

もっと読む

この記事の著者

トップスタジオ(トップスタジオ)

1997年の創立以来、一貫してPC/IT関連書籍、雑誌等記事の制作業務を手掛けるプロフェッショナル集団。翻訳・編集・DTPのほか、技術監修や著作も多数。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1445 2008/09/03 14:05

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング