Galera, esotu com dificuldades em configurar o EhCache utilizando o Spring,Hibernate e JPA.
Alguem utiliza esta configuração via anotações ?
Galera, esotu com dificuldades em configurar o EhCache utilizando o Spring,Hibernate e JPA.
Alguem utiliza esta configuração via anotações ?
Faça da seguinte forma
persistence.xml
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="nome-da-sua-pu">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name="hibernate.cache.provider_class" value="net.sf.ehcache.hibernate.SingletonEhCacheProvider" />
<property name="hibernate.cache.use_query_cache" value="true" />
<property name="hibernate.cache.use_second_level_cache" value="true" />
<property name="hibernate.generate_statistics" value="true" />
</properties>
</persistence-unit>
</persistence>
Anote a classe que deseja fazer cache da seguinte forma
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
@Cache(region="nome-do-seu-cache", usage = CacheConcurrencyStrategy.READ_WRITE)
onde “region” é o nome do seu cache definido no ehcache.xml, “usage” forma que ele ira trabalhar, somente leitura, leitura e escrita, etc. Habilite o log do hibernate para DEBUG, para você poder ver a informação dizendo que está adicionando a entidade no second-level-cache.