Zen Java インターフェイスの概要
Java アプリケーションのインターフェイス
Zen Java インターフェイスは、標準の Btrieve API に追加されるオブジェクト指向のインターフェイスです。
以下のトピックでは、このインターフェイスと基本的な使用法をご紹介します。
Zen における Java インターフェイス用開発の詳細については、
Java クラス ライブラリを使ったプログラミングを参照してください。
Zen Java インターフェイス
Zen Java クラスは MicroKernel エンジンへのインターフェイスです。
Java クラス ライブラリと MicroKernel エンジン
Zen リレーショナル エンジンでは、列レベルでのデータベースへのアクセスが可能です。一方、MicroKernel エンジンでは、ファイル、レコードおよびインデックスによるアクセスのみが可能で、アプリケーション プログラム自体では Btrieve API 呼び出しにより返されたデータ バッファー内でフィールド レベルのアクセスを行う必要があります。
SQL データベースでは、データ辞書ファイルに格納されているデータ辞書で、各列レベルの情報にアクセスできます。
メモ:Btrieve は、「ファイル、レコード、フィールド」の用語を使用しています。ただし、このセクションでは、Zen 辞書を持つデータベースと併用できるクラスについて説明する場合は、代わりに「テーブル、行、列」という用語を使用します。
この API の目的は、単に Java や C++ のようなオブジェクト指向言語へのインターフェイスを提供するということだけでなく、オブジェクト指向アプリケーションに適する論理構造を提供することにあります。
オブジェクト指向 API の設計では、次の目標に取り組んでいます。
•Btrieve アプリケーション開発者に一連の抽象化を提供する。
•使いやすさを保証する。
•プラットフォームに依存するバイトオーダーを隠す。
•開発者が Btrieve システムのすべての機能を使用できるようにする。
•MicroKernel エンジンのパフォーマンスを損なわないようにする。
Java の登場後まもなく、データベース インターフェイスとして Java Database Connectivity(JDBC)が導入されました。 JDBC は、データベース開発者の間にますます普及しつつあります。 新しい Zen Java API の設計では、モデルとして JDBC API を使用し、JDBC で使用されているアイデアと手法の多くを利用しています。 ただし、JDBC は、SQL と一般的にリレーショナル モデルをサポートするよう設計されているため、いくつかの新しい概念を導入する必要がありました。その一方で、この API セットはトランザクショナル Btrieve もサポートします。
既に述べたように、Btrieve アプリケーションが SQL データベースに属するデータ ファイルにアクセスする場合、新しい API 呼び出しはデータベースの辞書に格納されている列の記述を使用できます。SQL データベースの一部ではない Btrieve データ ファイルの場合、新しい API はこれらのファイルにアクセスするための別の手段を提供します。
データベース コンセプト
SQL データベースに属さない一連の Btrieve データ ファイルは、これまでどおり、アプリケーション プログラムが論理的な意味でそれらのファイルを 1 つに結合する場合にデータベースを構成します。そのようなデータベースを「疎結合型」データベースと呼びます。疎結合型データベースには、データベース辞書がありません。それに対して、SQL データベースを「密結合型」データベースと呼びます。密結合型データベースには、永続的なデータベース辞書があります。
Zen Java インターフェイスは、使用するクラスに応じて、高レベルでも低レベルでも動作可能です。
密結合型データベース
Java インターフェイスの高レベルの部分は、Btrieve のプログラマが以前扱っていたポジション ブロックおよびデータ バッファーなど、実装の詳細部分を隠します。
疎結合型データベース
疎結合型データベースを現在持っており、新しい API の列レベルのサポートを活用したいと考えているユーザーは、以下のオプションのうちの 1 つを選択する必要があります。
1 Zen Control Center を使用して、疎結合型データベースのデータベース辞書を作成します。実際には、新しい API を使用する前にデータベースが密結合型データベースに切り替えられます。
2 新しい永続的な辞書を作成し、新しい API を使用してアプリケーション プログラム内で Btrieve ファイルごとにテーブル、列などを定義します。 この場合、データベースはプログラムによって密結合型データベースに切り替えられます。
環境設定の方法
このセクションでは、Zen Java インターフェイスを使用する場合の適切な設定について説明します。
JDK のサポート
Zen Java インターフェイスは、JDK 1.4 以降のバージョンをサポートしています。
CLASSPATH 環境変数
Zen SDK では、Zen クラスを指すように CLASSPATH 変数を設定する必要があります。
サンプル CLASSPATH は、Zen が
file_path\Zen にインストールされており、Java Class Library SDK が
file_path\Zen
\SDK
\JCL にインストールされていることを前提とします。Zen ファイルのデフォルトの保存場所については、『
Getting Started with Zen』の
ファイルはどこにインストールされますか?を参照してください。
セッション内の CLASSPATH を次のように更新するか、または下記の手順に従って、Windows のコントロール パネルを使用して変更を永続化することができます。
SET CLASSPATH=.; file_path\Zen\bin\psql.jar;
file_path\Zen\SDK\JCL\Samples\PVideo\pvideoj.jar;
file_path\Zen\SDK\JCL\Samples\PVideo;
file_path は Zen のインストール場所です。
Windows CLASSPATH
ある Zen クラス ファイルが見つからないというエラーが発生した場合、コントロール パネルで設定されているユーザー CLASSPATH 変数が、Zen パスが設定されているシステム CLASSPATH 変数を上書きしている可能性があります。
以下の手順で Windows の設定を確認し、必要に応じて修正してください。
1 [スタート]メニューから[コントロール パネル]にアクセスします。
2 [システム]をダブルクリックします。
3 [詳細]タブまたは[詳細設定]タブを選択し、[環境変数]をクリックします。
4 Zen パスは、システム変数に含まれています。ユーザー環境変数で、CLASSPATH が存在するかどうかを確認します。存在しない場合、何もする必要はありません。存在する場合、ユーザー変数の先頭に %CLASSPATH%; を付けます。
PVideo Java サンプル アプリケーションの実行
PVideo サンプル アプリケーションは、Zen Java インターフェイスの機能を利用して作成されています。
►JCL SDK サンプル アプリケーションを実行するには
1 Zen SDK Java Pvideo フォルダーを開きます。デフォルトの場所に保存されていると仮定した場合、この場所は file_path\SDK\jcl\samples\Pvideo です。
Zen ファイルのデフォルトの保存場所については、『
Getting Started with Zen』の
ファイルはどこにインストールされますか?を参照してください。
2 PVideoJ.bat ファイルをダブルクリックします。
次のアプリケーション ウィンドウが表示されます。
図 1 Zen PVideo サンプル アプリケーションのメイン ウィンドウ - Java
PVideo アプリケーションのソースの表示
Zen ビデオ店サンプル アプリケーションの Java ソース ファイルは、.jar ファイルに格納されています。これらのファイルを抽出して、Btrieve テーブルに接続する Zen Java インターフェイスの実例を得ることができます。
以下の手順は、JDK がインストールされており、その \bin ディレクトリがパスに設定されていることを前提とします。
►Java ソース ファイルを解凍するには
1 コマンド プロンプトで、以下のように入力します。
cd \zen\sdk\jcl\samples\pvideo
2 次に、JAR コマンドを入力します。
jar -xvf source.zip
ソース ファイルが、現在のディレクトリと zen\sdk\jcl\samples\pvideo のサブディレクトリに展開されます。
Zen ファイルのデフォルトの保存場所については、『
Getting Started with Zen』の
ファイルはどこにインストールされますか?を参照してください。
開発者用リソース
Java インターフェイスを使用してアプリケーションを開発する際の情報は、以下の Web サイトで得ることができます。
オンライン リソース
リソース | オンラインの場所 |
---|
Actian Web サイトの開発者用コンテンツ | www.actian.com |
Oracle Java Web サイト | https://www.oracle.com/java/technologies/ |
Oracle Java チュートリアル | https://docs.oracle.com/javase/tutorial/ |
Javadocs 形式のリファレンス
Java クラス ライブラリに付属の Javadoc 形式のドキュメントでは、JCL ベースのアプリケーションで使用されるクラスとメソッドのリファレンスを提供します。