3

Infinispanを使用して、繰り返し呼び出されるクエリをキャッシュしたいと思います。

このチュートリアルに従って、Hibernateをセットアップしました。

InfinispanをJPAとして使用-Hibernateの第2レベルのキャッシュプロバイダー

私はすべての手順を実行しました。ログには、Infinispanが第2レベルのキャッシュとして使用され、クエリキャッシュが有効になっていることが示されていますが、クエリはキャッシュされていないようです。

このチュートリアルも試してみました: JBossAS5.xのHibernate2nd-LevelCacheとしてのInfinispanも成功しませんでした。

これが私が行った構成の抜粋です:

(orm.xml)

<entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm http://java.sun.com/xml/ns/persistence/orm_1_0.xsd"
    version="1.0">

    <named-query name="retrievePolicySet">
        <query>from PSTRepresentationType p where p.realm=? AND p.policySetType.policySetId=?</query>
        <hint name="org.hibernate.cacheable" value="true" />
    </named-query>

    <named-query name="retrievePolicySetList">
        <query>from PSTRepresentationType p where p.realm=?</query>
        <hint name="org.hibernate.cacheable" value="true" />
    </named-query>
</entity-mappings>

(persistence.xml)

<properties>
    <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect" />
    <property name="hibernate.show_sql" value="true" />
    <property name="hibernate.format_sql" value="true" />

    <property name="hibernate.cache.use_second_level_cache" value="true" />
    <!-- Enables the query cache. Individual queries still have to be set cachable. -->
    <property name="hibernate.cache.use_query_cache" value="true" />
    <property name="hibernate.cache.region.factory_class" value="org.hibernate.cache.infinispan.InfinispanRegionFactory" />

    <property name="hibernate.cache.infinispan.statistics" value="true" />
</properties>

JBossEAP5.1とhibernate-infinispan3.5.6-Finalを使用しています。

4

1 に答える 1

3

クロスポストhttp://community.jboss.org/thread/169801?tstart=0

于 2011-07-22T08:14:58.143 に答える