apoyo JPA2.0 de usuario personalizados de tipo y caché de segundo nivel
-
26-09-2019 - |
Pregunta
Estoy tratando de decidir si se debe pasar de tener Hibernate
salpicadas por todo el JPA2.0
a usar y por lo tanto ser proveedor de portátil.
1.Does JPA2.0
personalizados de soporte de usuario de tipo?
2.I'm a punto de implementar Terracotta
como una caché de segundo nivel a Hibernate
con sus capacidades de clustering principalmente en mente. Me imagino, pero que en realidad no conozco, que JPA2.0
también define una especificación para los proveedores de caché de segundo nivel. Si estoy en lo cierto, no Terracotta
ponerlo en práctica? (Si alguien me podría apuntar a un Primeros pasos con Terracotta
y JPA
lo agradecería).
Gracias de antemano,
Itai
Solución
¿El JPA2.0 personalizados de soporte de usuario de tipo?
Nada más allá @Embedded
y @Embeddable
(ya en JPA 1.0). Dependiendo de la complejidad de sus necesidades, que podrían hacer el trabajo).
Me imagino, pero no saben realmente, que JPA2.0 también define una especificación para los proveedores de caché de segundo nivel.
JPA 2.0 define métodos en el EntityManager
para acceder a la caché de segundo nivel que es mantenido por el proveedor de persistencia, una anotación de Cacheable
, algunas otras cosas. Pero la forma de conectar una memoria caché de su proveedor JPA es específico del proveedor. Así que no, JPA no define una especificación para los proveedores de caché L2. Y si desea utilizar Terracota como el proveedor de memoria caché L2 con Hibernate como JPA 2.0 aplicación, vistazo a la documentación de integración de Hibernate.
Referencias
-
especificación
- JPA 2.0
- Sección 3.7 "Caché"
- Sección 7.10 "Cache Interface"
- Sección 11.1.7 "cacheable anotación"