この章では、複数のプロジェクト・タイプに共通のTopLinkプロジェクトのオプションを構成する方法について説明します。
この章の内容は次のとおりです。
表117-1は、構成可能なTopLinkプロジェクト・タイプと、そのタイプで対応している構成可能オプションが記載されたタイプ別の章への相互参照を示します。
表117-2は、複数のTopLinkプロジェクト・タイプによって共有される構成可能オプションを示します。
詳細は、次を参照してください。
表117-2は、複数のTopLinkプロジェクト・タイプによって共有される構成可能オプションを示します。ここで説明される構成可能オプション以外にも、表117-1に示すように、特定のTopLinkプロジェクトのタイプ(15.1項「TopLinkプロジェクト・タイプ」を参照)について説明しているオプションも構成する必要があります。
表117-2 共通プロジェクト・オプション
構成オプション | Oracle JDeveloper |
TopLink Workbench | Java |
---|---|---|---|
保存場所(117.2項「プロジェクトの保存場所の構成」を参照) |
|||
クラスパス(117.3項「プロジェクト・クラスパスの構成」を参照) |
|||
メソッドまたは直接フィールド・アクセス(117.4項「プロジェクト・レベルでのメソッドまたは直接フィールド・アクセスの構成」を参照) |
|||
永続性タイプ(117.5項「永続性タイプの構成」を参照) |
|||
デフォルト・ディスクリプタのアドパンスト・プロパティ(117.6項「デフォルト・ディスクリプタのアドバンスト・プロパティの構成」を参照) |
|||
存在チェック(117.7項「プロジェクト・レベルでの存在チェックの構成」を参照) |
|||
デプロイXMLオプション(117.8項「プロジェクト・デプロイXMLのオプションの構成」を参照) |
|||
モデルJavaソース・コードのオプション(117.9項「モデルJavaソース・コードのオプションの構成」を参照) |
|||
非推奨のダイレクト・マッピング(20.11項「非推奨のダイレクト・マッピングの構成」を参照) |
|||
キャッシュ・タイプとサイズ(117.10項「プロジェクト・レベルでのキャッシュ・タイプとサイズの構成」を参照) |
|||
キャッシュ分離(117.11項「プロジェクト・レベルでのキャッシュ分離機能の構成」を参照) |
|||
キャッシュ・コーディネーション変更伝播(117.12項「プロジェクト・レベルでのキャッシュ・コーディネーション変更伝播の構成」を参照) |
|||
キャッシュの有効期限(117.13項「プロジェクト・レベルでのキャッシュの有効期限の構成」を参照) |
|||
コメント(117.14項「プロジェクト・コメントの構成」を参照) |
TopLink Workbenchを使用する場合のみ、プロジェクトの保存場所を構成できます。
表117-3では、どのプロジェクトがプロジェクトの保存場所をサポートしているかを示します。
表117-3 プロジェクトでのプロジェクトの保存場所のサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクトの保存場所の構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
||
EISプロジェクト |
|
||
XMLプロジェクト |
|
プロジェクトの「一般」タブ上の「プロジェクトの保存場所」フィールドは、表示専用です。このフィールドは、プロジェクトの完全ディレクトリ・パスを表示します。プロジェクトで使用されるすべての相対する場所は、このディレクトリをベースにしています。
新規の場所を選択するには、ナビゲータでプロジェクトを右クリックし、そのコンテキスト・メニューから「別名保存」を選択します。詳細は、116.2.2項「プロジェクトの保存方法」を参照してください。
TopLinkプロジェクトでは、Javaクラスのインポートおよびオブジェクト・タイプの定義の際に、クラスパス(一連のディレクトリ、JARファイルおよびZIPファイル)を使用します。
表117-4では、どのプロジェクトがプロジェクト・クラスパスの構成をサポートしているかを示します。
表117-4 プロジェクトでのプロジェクト・クラスパスのサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・クラスパスの構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
||
EISプロジェクト |
|
||
XMLプロジェクト |
|
JDBCドライバまたはプロジェクト・クラスパスのデータ・ソースのアクセスに必要な他の要素を含めないでください。setenv
ファイルを使用して、これらのアプリケーション・レベルの設定を指定します(5.2項「TopLink Workbench環境の構成」を参照)。
プロジェクト・クラスパスを構成した後に、TopLink Workbenchを使用してプロジェクトにクラスをインポートできます(5.7.3項「クラスのインポート方法および更新方法」を参照)。
プロジェクト・クラスパス情報を指定するには、次の手順を実行します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「一般」タブを選択します。「一般」タブが表示されます。
新規のクラスパス・エントリを追加するには、「エントリの追加」または「参照」をクリックし、このプロジェクトに対するディレクトリ、.jar
ファイルまたは.zip
ファイルを選択します。相対クラスパスを作成するには、エントリを選択し、必要に応じてパスを編集します。そのパスは「プロジェクトの保存場所」に相対します。
クラスパス・エントリを削除するには、エントリを選択して「削除」をクリックします。
エントリの順序を変更するには、エントリを選択して「上へ」または「下へ」をクリックします。
デフォルトでは、TopLinkは永続化の操作を実行する際に、オブジェクトの永続属性に直接アクセスします。これは、直接フィールド・アクセスと呼ばれています。あるいは、オブジェクトのアクセッサ・メソッドを使用して永続属性にアクセスするようTopLinkを構成できます。これは、メソッド・アクセスと呼ばれています。
マッピングにはフィールド・アクセスの使用をお薦めします。フィールド・アクセスがより効率的なだけでなく、メソッドが予期しない副次的な影響を生じる場合、メソッドの使用は問題を引き起こす可能性があります。
表117-5では、どのプロジェクトがマップされたフィールド・アクセスの構成をサポートしているかを示します。
表117-5 プロジェクトでのマップされたフィールド・アクセスのサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・レベルでのメソッドまたは直接フィールド・アクセスの構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
|
|
この項では、プロジェクト・レベルでのマップされたフィールド・アクセスの構成について説明します。デフォルトでは、この構成はすべてのディスクリプタおよびそのマッピングに適用されます。
注意: アクセス・デフォルトを変更する場合、既存マッピングの現在のアクセス設定は保持されますが、新規マッピングは新規デフォルトによって作成されます。 |
マッピング・レベルでマップされたフィールド・アクセスを構成して、このプロジェクト・レベルの構成をマッピング単位でオーバーライドすることもできます。詳細は、121.6項「マッピング・レベルでのメソッドまたは直接フィールド・アクセスの構成」を参照してください。
プロパティの変更追跡を有効にし(たとえば、@ChangeTracking
でメソッドgetPhone
を修飾するなど)、フィールド(phone
)に直接アクセスする場合、TopLinkでは変更が検出されないことに注意してください。詳細は、2.4.1.4項「メソッドおよび直接フィールド・アクセスの使用」を参照してください。
フィールド・アクセス・メソッド情報を指定するには、次の手順を使用します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「デフォルト」タブを選択します。「デフォルト」タブが表示されます。
Oracle JDeveloperまたはTopLink Workbenchを使用する場合は、プロジェクトの永続性タイプを構成できます。
TopLink Workbenchを使用して、プロジェクトで使用する永続性タイプを指定できます。たとえば、TopLinkプロジェクトでは、プレーンJavaオブジェクト、コンテナ管理の永続性を備えたエンティティBean、またはBean管理の永続性(BMP)を備えたエンティティBeanを使用できます。
表117-6では、どのプロジェクトが永続性タイプの構成をサポートしているかを示します。
表117-6 プロジェクトでの永続性タイプのサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用した永続性タイプの構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
永続クラスに対してTopLinkディスクリプタを作成するには、TopLink WorkbenchではコンパイルされたJava .class
ファイルを読み取り、その属性およびリレーションシップを読み取ります。TopLinkディスクリプタの詳細は、14.1.2項「ディスクリプタ」を参照してください。
EJBプロジェクトの場合は、TopLinkで必要な永続情報の読取り、および書込みが可能なejb-jar.xml
ファイルを指定できます。ejb-jar.xml
ファイルを使用して、コンテナ管理の永続性を備えたエンティティBeanの(<cmp-field>
タグによって定義される、コンテナ管理のフィールドと呼ばれる)仮想フィールドまたは(<cmr-field>
タグによって定義される、コンテナ管理のリレーションシップと呼ばれる)リレーションシップをデータ・ソースにマップします。
TopLink Workbenchは、エンティティ・クラスに対するすべてのディスクリプタを(ejb-jar.xml
ファイルの定義と同様に)EJBディスクリプタとして定義します。TopLink Workbenchでは、ejb-jar.xml
ファイルからリフレッシュする際、インタフェースのディスクリプタおよびエンティティの主キー・クラスを作成(または削除)しません。
注意: TopLink Workbenchは、ejb-jar.xml ファイルで定義されていないエンティティ・クラスのクラス・ディスクリプタを作成します。ディスクリプタ・タイプは手動で変更する必要があります(119.18項「EJB CMPおよびBMP情報によるディスクリプタの構成」を参照)。 |
XMLファイルからプロジェクトを更新するには、EJBディスクリプタを右クリックして「ejb-jar.xmlからディスクリプタを更新」を選択します。メニューから「選択」→「ejb-jar.xmlからディスクリプタを更新」と選択して、プロジェクトを更新することもできます。
ejb-jar.xml
ファイルなどのデプロイ・ファイルの作成および使用の詳細は、次を参照してください。
永続性の情報を指定するには、次の手順を実行します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「一般」タブを選択します。「一般」タブが表示されます。
次の表を参照し、プロジェクトの「一般」タブの各フィールドにデータを入力して、永続性のオプションを構成します。
フィールド | 説明 |
---|---|
永続性タイプ | プロジェクトの永続性タイプ「Javaオブジェクト」、「CMP 1.1」、「CMP 2.x」または「BMP」を指定します。EJBプロジェクトの場合は、ejb-jar.xml ファイルの場所を指定します。
注意: このフィールドはXMLプロジェクトには適用されません。 |
ejb-jar.xmlの場所 | このプロジェクトのejb-jar.xml ファイルの場所を指定します。詳細は、19.7項「ejb-jar.xmlファイルの使用」を参照してください。
注意: このフィールドは、EJBプロジェクトのみに適用されます。 |
Oracle JDeveloperまたはTopLink Workbenchを使用する場合に、デフォルト・ディスクリプタのアドバンスト・プロパティを構成できます。
デフォルトでは、TopLink Workbenchでは各ディスクリプタ・タイプの機能のサブセットが表示されます。このサブセットは、ディスクリプタに追加のアドバンスト・プロパティがデフォルトで含まれるように変更できます。
個々のディスクリプタに対して特定のアドバンスト・プロパティを選択することもできます(第119章「ディスクリプタの構成」を参照)。
表117-7では、どのプロジェクトがデフォルト・ディスクリプタのアドバンスト・プロパティの構成をサポートしているかを示します。
表117-7 プロジェクトでのデフォルト・ディスクリプタのアドバンスト・プロパティのサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したデフォルト・ディスクリプタのアドバンスト・プロパティの構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
|
|
プロジェクトで新規に作成されたディスクリプタのデフォルト・アドバンスト・プロパティを指定するには、次の手順を実行します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「デフォルト」タブを選択します。「デフォルト」タブが表示されます。
新規に作成されたディスクリプタに追加する「ディスクリプタのアドバンスト・プロパティ」を選択します。アドバンスト・プロパティのリストは、プロジェクト・タイプによって異なります。
TopLinkでは、データベースにオブジェクトを書き込む際に、存在チェックを実行して挿入と更新操作のどちらを行うかを判断します。
デフォルトでは、TopLinkはキャッシュに対してチェックします。このデフォルトの存在チェック・オプションをほとんどのアプリケーションに対して使用することをお薦めします。データベースの存在チェックは、アプリケーションでのパフォーマンスのボトルネックの原因になる場合があります。
表117-8では、どのプロジェクトが存在チェックの構成をサポートしているかを示します。
表117-8 プロジェクトでの存在チェックのサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・レベルでの存在チェックの構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
デフォルトでは、この構成はプロジェクトのすべてのディスクリプタに適用されます。ディスクリプタ・レベルで存在チェックを構成して、このプロジェクト・レベルの構成をディスクリプタ単位でオーバーライドすることもできます。詳細は、119.17項「ディスクリプタ・レベルでのキャッシュ存在チェックの構成」を参照してください。
詳細は、次を参照してください。
存在チェックの情報を指定するには、次の手順を実行します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「デフォルト」タブを選択します。「デフォルト」タブが表示されます。
次の表を参照して、新規に作成するディスクリプタに存在チェックのオプションを指定するため、次のフィールドのデータを指定します。
フィールド | 説明 |
---|---|
キャッシュのチェック | セッション・キャッシュをキャッシュします。オブジェクトがキャッシュ内に存在しない場合、オブジェクトは存在しないとみなします(挿入を行います)。オブジェクトがキャッシュ内に存在する場合、オブジェクトは存在するとみなします(更新を行います)。
ほとんどのアプリケーションに対してこのオプションを使用することをお薦めします。 |
データベースのチェック | オブジェクトがキャッシュ内に存在しない場合、データベースに問い合せてオブジェクトが存在するかどうか判断します。オブジェクトが存在する場合、更新を行います。それ以外の場合、挿入を行います。
このオプションを選択すると、パフォーマンスが低下する場合があります。詳細は、115.1.3.1項「「データベースのチェック」の使用」を参照してください。 |
存在すると仮定 | 常にオブジェクトが存在すると仮定します。常に更新を行います(挿入は行いません)。
詳細は、115.1.3.2項「「存在すると仮定」の使用」を参照してください。 |
存在しないと仮定 | 常にオブジェクトが存在しないと仮定します。常に挿入を行います(更新は行いません)。
詳細は、115.1.3.3項「「存在しないと仮定」の使用」を参照してください。 |
TopLink Workbenchを使用する場合は、プロジェクト・デプロイXMLのオプションを構成できます。
TopLink Workbenchを使用して、デプロイXMLをエクスポートまたは生成する際にデフォルトのファイル名、クラス名およびディレクトリを指定できます。ディレクトリはプロジェクトの保存場所に相対し(117.2項「プロジェクトの保存場所の構成」を参照)、生成されたパッケージごとのフォルダを含みます。
表117-9では、どのプロジェクトがデプロイXMLオプションをサポートしているかを示します。
表117-9 プロジェクトでのプロジェクト・デプロイXMLのオプションのサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・デプロイXMLのオプションの構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
||
EISプロジェクト |
|
||
XMLプロジェクト |
|
デフォルトのエクスポート・オプションを指定するには、次の手順を実行します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「オプション」タブを選択します。「オプション」タブが表示されます。
この表を使用して、次のフィールドにデータを入力し、デフォルトの「プロジェクト配布XML」のオプションを指定します。
フィールド | 説明 |
---|---|
ファイル名 | プロジェクト・デプロイXMLを生成する際に使用するファイル名(project.xml など) |
ディレクトリ | 生成されたデプロイXMLファイルを保存するディレクトリ |
Oracle JDeveloperまたはTopLink Workbenchを使用する場合、モデルJavaソース・コードのオプションを構成できます。
TopLink Workbenchを使用して、ドメイン・オブジェクトのJavaソース・コードをエクスポートまたは生成する際に、デフォルトのファイル名、クラス名およびディレクトリを指定できます。ディレクトリはプロジェクトの保存場所に相対し(117.2項「プロジェクトの保存場所の構成」を参照)、生成されたパッケージごとのフォルダを含みます。
表117-10では、どのプロジェクトがモデルJavaソース・コードのオプションをサポートしているかを示します。
表117-10 プロジェクトでのモデルJavaソースのオプションのサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したモデルJavaソース・コードのオプションの構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
|
|
デフォルトのエクスポート・オプションを指定するには、次の手順を実行します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「オプション」タブを選択します。「オプション」タブが表示されます。
TopLInk WorkbenchがモデルJavaソース・ファイルを生成する、プロジェクト・ルート・ディレクトリを指定します。詳細は、118.3項「ディスクリプタに関するJavaコードの生成」を参照してください。
TopLinkキャッシュは、クラスと主キーの値に基づいて最近読み取られたり書き込まれたオブジェクトが格納される、インメモリー・リポジトリです。TopLinkでは、次の目的でこのキャッシュが利用されます。
最近読み取られたり書き込まれたオブジェクトを保持し、メモリー内でそれらにアクセスしてデータベースへのアクセスを最小限にすることで、パフォーマンスを向上させます。
ロックと分離レベルを管理します。
オブジェクト・アイデンティティを管理します。
表117-11では、どのプロジェクトがアイデンティティ・マップの構成をサポートしているかを示します。
表117-11 プロジェクトでのアイデンティティ・マップの構成のサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・レベルでのキャッシュ・タイプとサイズの構成方法 |
Javaを使用したプロジェクト・レベルでのキャッシュ・タイプとサイズの構成方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
プロジェクト・レベルで構成するキャッシュ・オプションは、すべてのディスクリプタにグローバルに適用されます。この項を使用して、TopLinkプロジェクトのグローバルなキャッシュ・オプションを定義します。
プロジェクト・レベルのアイデンティティ・マップの構成は、ディスクリプタ・レベルでアイデンティティ・マップの構成を定義することによってオーバーライドできます。特定ディスクリプタのキャッシュおよびアイデンティティ・マップ構成の定義の詳細は、119.12項「ディスクリプタ・レベルでのキャッシュ・タイプとサイズの構成」を参照してください。
注意: TopLink Workbenchを使用する際、プロジェクトのデフォルトのアイデンティティ・マップを変更しても、プロジェクト内の既存のディスクリプタには影響はありません。新規に追加されたディスクリプタのみ影響されます。 |
キャッシングとオブジェクト・アイデンティティの詳細、およびTopLinkのパフォーマンスを最大化するための推奨設定は、102.2.1項「キャッシュ・タイプおよびオブジェクト・アイデンティティ」を参照してください。
キャッシュの詳細は、第102章「キャッシュの概要」を参照してください。
キャッシュ・アイデンティティ・マップを指定するには、次の手順を実行します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「デフォルト」タブを選択します。「デフォルト」タブが表示されます。
次の表を使用して、各フィールドにデータを入力し、キャッシュ・オプションを指定します。
フィールド | 説明 |
---|---|
タイプ | 「タイプ」のドロップダウン・リストから、次のいずれかのアイデンティティ・マップを選択します。
詳細は、102.2.1項「キャッシュ・タイプおよびオブジェクト・アイデンティティ」を参照してください。 プロジェクトのデフォルトのアイデンティティ・マップを変更しても、プロジェクト内の既存のディスクリプタには影響はありません。 |
サイズ | 次のようにキャッシュのサイズを指定します。
|
目的のタイプのアイデンティティ・マップを使用できるようにディスクリプタを構成するには、ClassDescriptor
の次のメソッドのいずれかを使用します。
useFullIdentitMap
useWeakIdentityMap
useSoftIdentityMap
useSoftCacheWeakIdentityMap
useHardCacheWeakIdentityMap
useNoIdentityMap
アイデンティティ・マップのサイズを構成するには、ClassDescriptor
メソッドsetIdentityMapSize
を使用します。
独立セッションの使用を計画している場合(102.2.7項「キャッシュの分離」を参照)、独立セッションのキャッシュに限定するオブジェクトについて、ディスクリプタを分離するよう構成する必要があります。
ディスクリプタを分離するように構成するとは、TopLinkが共有セッション・キャッシュにオブジェクトを格納せず、オブジェクトがクライアント・セッション全体にわたって共有されないということを意味します。つまり、各クライアントはデータベースから直接、独自のオブジェクト読取りを行います。分離クライアント・セッション・キャッシュ内のオブジェクトは、親サーバー・セッションの共有セッション・キャッシュ内のオブジェクトを参照できますが、共有セッション・キャッシュ内のオブジェクトが分離クライアント・セッション・キャッシュ内のオブジェクトを参照することはできません。分離構成が必要となるのは、Oracle Database Virtual Private Database(VPD)のサポートまたはデータベース・ユーザー単位の読取りセキュリティを使用する場合です。また、全クライアント・セッションにわたるキャッシングが望ましくない場合にも分離構成を使用できます。
表117-12では、どのプロジェクトがキャッシュ分離構成をサポートしているかを示します。
表117-12 プロジェクトでのキャッシュ分離構成のサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・レベルでのキャッシュ分離の構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
プロジェクト・レベルで構成するキャッシュ分離のオプションは、すべてのディスクリプタにグローバルに適用されます。この項を使用して、TopLinkプロジェクトのグローバルなオプションを定義します。
プロジェクト・レベルの構成は、ディスクリプタ・レベルでキャッシュ分離オプションを定義することによってオーバーライドできます。詳細は、119.13項「ディスクリプタ・レベルでのキャッシュ分離機能の構成」を参照してください。
注意: TopLink Workbenchを使用する際、プロジェクトのデフォルトのキャッシュ分離オプションを変更しても、プロジェクト内の既存のディスクリプタには影響はありません。新規に追加されたディスクリプタのみ影響されます。 |
キャッシュ分離オプションを指定するには、次の手順に従います。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「デフォルト」タブを選択します。「デフォルト」タブが表示されます。
「分離」リストを使用して、次のいずれかを選択します。
独立: すべてのオブジェクトを分離クライアント・セッション・キャッシュ内でのみ使用可能にします。詳細は、102.2.7項「キャッシュの分離」を参照してください。
共有: すべてのオブジェクトを共有セッション・キャッシュ内で参照可能にします(デフォルト)。
コーディネート・キャッシュの使用を計画する場合(102.3項「キャッシュ・コーディネーション」を参照)、コーディネート・キャッシュから変更を伝播する方法とその条件を構成できます。
表117-13では、どのプロジェクトがキャッシュ・コーディネーション変更伝播の構成をサポートしているかを示します。
表117-13 プロジェクトでのキャッシュ・コーディネーション変更伝播の構成のサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・レベルでのキャッシュ・コーディネーション変更伝播の構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
プロジェクト・レベルで構成するキャッシュ・コーディネーション変更伝播のオプションは、すべてのディスクリプタにグローバルに適用されます。この項を使用して、TopLinkプロジェクトのグローバルなオプションを定義します。
プロジェクト・レベルの構成は、ディスクリプタ・レベルでキャッシュ・コーディネーション変更伝播のオプションを定義することによってオーバーライドできます。詳細は、119.15項「ディスクリプタ・レベルでのキャッシュ・コーディネーション変更伝播の構成」を参照してください。
コーディネート・キャッシュの構成を完了するには、第103章「コーディネート・キャッシュの構成」を参照してください。
注意: TopLink Workbenchを使用する際、プロジェクトのデフォルトのキャッシュ・コーディネーション変更伝播オプションを変更しても、プロジェクト内の既存のディスクリプタには影響はありません。新規に追加されたディスクリプタのみ影響されます。 |
キャッシュ・コーディネーション変更伝播のオプションを指定するには、次の手順に従います。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「デフォルト」タブを選択します。「デフォルト」タブが表示されます。
次の情報を参照し、「コーディネーション」フィールドにデータを入力します。
「コーディネーション」オプション | 説明 | 使用する場合 |
---|---|---|
なし | 既存インスタンスおよび新規インスタンスの両方の場合に、変更通知を伝播しません。 | まれに読み取られる、または変更されるオブジェクトの場合。 |
変更の同期化 | 既存のインスタンスの場合、変更された各属性を含む変更通知を伝播します。
新規のインスタンスの場合、インスタンスがこの変更伝播オプションで構成された既存の他のオブジェクトに関連する場合のみ、オブジェクト作成がすべての新規インスタンスの属性とあわせて伝播されます。 |
頻繁に読み取られるまたは変更される、ほとんど属性のないオブジェクトの場合、または少数の属性のみが頻繁に変更される場合。
多数のリレーションシップまたは複雑なリレーションシップを持つオブジェクト |
変更および新規オブジェクトの同期化 | 既存のインスタンスの場合、変更された各属性を含む変更通知を伝播します。
新規インスタンスの場合、オブジェクト作成を、新規インスタンスのすべての属性とともに伝播します。 |
頻繁に読み取られるまたは変更される、ほとんど属性のないオブジェクトの場合、または少数の属性のみが頻繁に変更される場合。
ほとんどリレーションシップのない、または単純なリレーションシップを持つオブジェクトの場合。 |
変更済オブジェクトの無効化 | 既存のインスタンスの場合、他のすべてのセッションでオブジェクトを無効としてマークする、オブジェクトの無効化を伝播します。これにより、他のセッションは次回このオブジェクトを読み取るときに、セッションのキャッシュをデータ・ソースにより更新する必要があることがわかります。
新規インスタンスの場合、変更通知は伝播されません。 |
頻繁に読み取られるまたは変更される、多数の属性を含むオブジェクト、または多数の属性のみが頻繁に変更される場合。 |
デフォルトでは、オブジェクトは明示的に削除されるまで(114.7項「オブジェクトの削除」を参照)、または弱アイデンティティ・マップの使用時はガベージ・コレクションされるまで、キャッシュに保持されます(117.10項「プロジェクト・レベルでのキャッシュ・タイプとサイズの構成」を参照)。あるいは、CacheInvalidationPolicy
で自動または手動でオブジェクトが無効であると指定し、オブジェクトを構成できます。これにより、問合せで無効オブジェクトを読み取ろうとすると、TopLinkではそのオブジェクトの最新バージョンのデータ・ソースへアクセスし、その情報でキャッシュを更新します。
キャッシュ無効化の使用により、失効したデータがアプリケーションで使用されないようにします。これはリフレッシュ実行のよりよい代替方法です(119.9項「キャッシュ・リフレッシュ機能の構成」を参照)。
表117-14では、どのプロジェクトがキャッシュ無効化の構成をサポートしているかを示します。
表117-14 プロジェクトでのキャッシュ無効化の構成のサポート
ディスクリプタ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・レベルでのキャッシュの有効期限の構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
|
|
EISプロジェクト |
|
|
|
XMLプロジェクト |
プロジェクト・レベルで構成するキャッシュ無効化のオプションは、すべてのディスクリプタにグローバルに適用されます。この項を使用して、TopLinkプロジェクトのグローバルなキャッシュ無効化のオプションを定義します。
プロジェクト・レベルのキャッシュ無効化の構成は、ディスクリプタ・レベル(119.16項「ディスクリプタ・レベルでのキャッシュ有効期限の構成」を参照)または問合せレベル(111.13.2項「問合せレベルにおけるキャッシュの有効期限の構成方法」を参照)でキャッシュ無効化を定義してオーバーライドできます。
コーディネート・キャッシュを使用している場合は、効率性を高めるためオブジェクトが無効であると宣言されているという事実をTopLinkに通信する方法をカスタマイズできます。詳細は、119.15項「ディスクリプタ・レベルでのキャッシュ・コーディネーション変更伝播の構成」を参照してください。
注意: TopLink Workbenchを使用する際、プロジェクトのデフォルトのキャッシュ無効化を変更しても、プロジェクト内の既存のディスクリプタには影響はありません。新規に追加されたディスクリプタのみ影響されます。 |
詳細は、102.2.5項「キャッシュの無効化」を参照してください。
プロジェクトに対してキャッシュの有効期限のオプションを指定するには、次の手順に従います。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「デフォルト」タブを選択します。「デフォルト」タブが表示されます。
次の表に説明されているタブの各フィールドにデータを入力します。
フィールド | 説明 |
---|---|
失効なし | キャッシュ内のオブジェクトは失効しないと指定します。 |
時間による失効 | キャッシュ内のオブジェクトは一定時間の経過後に失効すると指定します。「失効までの時間」フィールドを使用して、オブジェクトが失効するまでの時間(ミリ秒)を示します。 |
日次の失効 | キャッシュ内のオブジェクトは毎日特定の時間に失効すると指定します。「失効の時間」フィールドを使用して、オブジェクトが失効する正確な時刻を秒単位まで(24時間表記で)示します。 |
更新時に読取り時間を更新 | オブジェクトの更新後に失効時間をリセットする必要がある場合に指定します。 |
注意: これらのオプションは、プロジェクトのすべてのディスクリプタに適用されます。ディスクリプタに固有のオプションの構成の詳細は、119.16項「ディスクリプタ・レベルでのキャッシュ有効期限の構成」を参照してください。 |
プロジェクトごとに自由形式のテキスト・コメントを定義できます。これらのコメントは任意の用途に使用できます。たとえば、プロジェクトの目的または重要性など、プロジェクトの重要な実装詳細を記録することなどに使用できます。
Oracle JDeveloperやTopLink Workbenchのプロジェクトでは、コメントはTopLinkデプロイXMLファイルに格納されます。この機能に対応するJava APIはありません。
表117-15では、どのプロジェクトがこのオプションをサポートしているかを示します。
表117-15 プロジェクトでのプロジェクト・コメントのサポート
プロジェクト・タイプ | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したプロジェクト・コメントの構成方法 |
Javaの使用方法 |
---|---|---|---|
リレーショナル・プロジェクト |
|
||
EISプロジェクト |
|
||
XMLプロジェクト |
|
プロジェクトのコメントを指定するには、次の手順を実行します。
ナビゲータでプロジェクト・オブジェクトを選択します。
エディタで「一般」タブを選択します。「一般」タブが表示されます。
「コメント」フィールドに説明的なテキスト情報を入力します。