HashIndex プラグインの構成

組み込み HashIndex である com.ibm.websphere.objectgrid.plugins.index.HashIndex クラスを構成するには、XML ファイルを使用するか、 プログラマチックに行うか、またはエンティティー・マップのエンティティー・アノテーションを使用できます。

このタスクについて

複合索引の構成は、XML を使用した 通常の索引の構成と同じですが、attributeName プロパティー値は例外です。複合索引の場合、attributeName プロパティーの 値は、コンマ区切りの属性のリストです。 例えば、値クラス Address は、city、state、および zipcode の 3 つの 属性を持つとします。この場合、"city,state,zipcode" という attributeName プロパティー値を 使用して複合索引を定義し、複合索引に city、state、および zipcode が含まれていることを 示すことができます。

また、複合 HashIndexes は、範囲検索を サポートしないため、RangeIndex プロパティーを true に設定しないよう 注意してください。

手順

例: BackingMap への HashIndex の追加

次の例では、静的索引プラグインを XML ファイルに追加して HashIndex プラグインを構成します。

<backingMapPluginCollection id="person">
   <bean id="MapIndexPlugin" 
      className="com.ibm.websphere.objectgrid.plugins.index.HashIndex">
         <property name="Name" type="java.lang.String" value="CODE" 
            description="index name" />
         <property name="RangeIndex" type="boolean" value="true" 
            description="true for MapRangeIndex" />
         <property name="AttributeName" type="java.lang.String" value="employeeCode" 
            description="attribute name" />
   </bean>
</backingMapPluginCollection>

この XML 構成例では、 組み込み HashIndex クラスが索引プラグインとして使用されています。HashIndex は、Name、RangeIndex、AttributeName などの、 ユーザーが構成できるプロパティーをサポートしています。

つまり、上記の例では、単一属性範囲 HashIndex を定義しています。 単一属性 HashIndex である理由は、AttributeName プロパティーの値が employeeCode であり、1 つの属性名しか含まれていないためです。また、範囲 HashIndex でもあります。