cargador de clases a medida para Hibernate-mapping
-
09-10-2019 - |
Pregunta
¿Alguien sabe una manera de interceptar la llamada Hibernate hacer para crear instancias de una clase indicada en un archivo .hbm.xml? Necesito una manera de utilizar un cargador de clases a medida para proporcionar una instancia. No quiero a la carga de clases para el cambio de hibernación, en general, sólo el instantiate de la clase mapeada "POJO".
<hibernate-mapping>
<class name="com.foo.Bar" table="Bar">
En el código de ejemplo anterior, cuando Hibernate quiere crear una instancia de bar necesito proporcionar esa clase con código personalizado en lugar de confiar en el comportamiento de la carga de clases por defecto.
Gracias de antemano por cualquier idea,
saethi
Solución
Puede personalizar el modo de hibernación crea entidades con el Tuplizer
personalizado. Consulte la documentación de hibernación, capítulo 4.5 .
Se puede extender PojoEntityTuplizer
, y reemplazar el método buildInstantiator(PersistentClass persistentClass)
devolviendo una instancia Instantiator
que construye entidades sin embargo se prefiere.