Estoy usando la memoria caché de segundo nivel de Hibernate en mi aplicación, por algún motivo comercial No puedo cambiar la anotación de entidad más.Cómo puedo deshabilitar la memoria caché de segundo nivel de ciertas entidades en Hibernate sin cambiar las anotaciones
En mi proyecto, además de cambiar la base de datos de Hibernate, existen otros SQL nativos que no pasan por Hibernate. Por lo tanto, los datos de caché de segundo nivel de Hibernate podrían estar obsoletos después de actualizar la base de datos desde SQL nativo. Es por eso que quiero para desactivar el caché de segundo nivel para ciertas entidades (programáticamente o de otra manera que cambiar la anotación).
¡Gracias de antemano!
Gracias Matej, ¡creo que esta es exactamente la respuesta que quería! Tengo otro problema, mi ehcache.xml se coloca en la ruta de clase de mi proyecto ejecutable mientras que la clase de entidad se coloca en otro proyecto de entidad. Parece que Hibernate solo lee la configuración de caché predeterminada de mi ehcache.xml. que es: Hibernate no ha leído mi otra entidad la configuración de caché en ehcache.xml. –
Creo que en el , el atributo de nombre no es mal colocada de modo que la hibernación puede use lea esta configuración y use la predeterminada. ¿Qué debo escribir en el atributo de nombre? –
Hibernate identifica caché para el objeto por su nombre de entidad. De forma predeterminada, el nombre de clase se utiliza como nombre de entidad, pero se puede cambiar en los archivos de asignación de Hibernate (o anotaciones). Si no ha cambiado el nombre de la entidad en el mapeo de Hibernate, simplemente debe usar el nombre de clase totalmente calificado. De lo contrario, utilice el nombre de entidad (simbólico) explícitamente especificado en el mapeo de Hibernate. – Matej