second example cacheable cache java hibernate jpa caching

java - example - jpa cache



Habilitación de la memoria caché de segundo nivel de Hibernate con JPA en JBoss 4.2 (2)

Creo que debe agregar las anotaciones de caché para indicar a hibernar cómo usar el caché de segundo nivel (solo lectura, lectura-escritura, etc.). Este fue el caso en mi aplicación (utilizando spring / hibernate tradicional y ehcache, por lo que su kilometraje puede variar). Una vez que se indicaron las cachés, comencé a ver mensajes que estaban en uso desde la hibernación.

¿Cuáles son los pasos necesarios para habilitar la memoria caché de segundo nivel de Hibernate cuando se utiliza la API Java Persistence (entidades anotadas)? ¿Cómo compruebo que está funcionando? Estoy usando JBoss 4.2.2.GA.

De la documentación de Hibernate, parece que necesito habilitar el caché y especificar un proveedor de caché en persistence.xml , como:

<property name="hibernate.cache.use_second_level_cache" value="true" /> <property name="hibernate.cache.provider_class" value="org.hibernate.cache.HashtableCacheProvider" />

¿Qué más se requiere? ¿Debo agregar anotaciones @Cache a mis entidades JPA?

¿Cómo puedo saber si el caché está funcionando? He intentado acceder a las estadísticas de caché después de ejecutar una consulta, pero Statistics.getSecondLevelCacheStatistics devuelve null, tal vez porque no sé qué nombre de ''región'' usar.


Seguimiento: al final, después de agregar anotaciones, lo tengo trabajando con EhCache, es decir,

<property name="hibernate.cache.provider_class" value="net.sf.ehcache.hibernate.EhCacheProvider" />