Java 用于Hibernate映射的自定义类加载器

Java 用于Hibernate映射的自定义类加载器,java,classloader,hibernate-mapping,Java,Classloader,Hibernate Mapping,是否有人知道一种拦截Hibernate调用的方法,该调用用于实例化.hbm.xml文件中指示的类?我需要一种使用自定义类加载器来提供实例的方法。一般来说,我不想更改Hibernate的类加载,只想更改映射的“POJO”类的实例化 在上面的示例代码中,当Hibernate想要实例化Bar时,我需要为该类提供自定义代码,而不是依赖默认的类加载行为 提前感谢您提供的任何见解, saethi您可以自定义Hibernate使用自定义Tuplizer创建实体的方式。请参阅hibernate文档 您可以扩

是否有人知道一种拦截Hibernate调用的方法,该调用用于实例化.hbm.xml文件中指示的类?我需要一种使用自定义类加载器来提供实例的方法。一般来说,我不想更改Hibernate的类加载,只想更改映射的“POJO”类的实例化


在上面的示例代码中,当Hibernate想要实例化Bar时,我需要为该类提供自定义代码,而不是依赖默认的类加载行为

提前感谢您提供的任何见解,

saethi

您可以自定义Hibernate使用自定义
Tuplizer创建实体的方式。请参阅hibernate文档


您可以扩展
PojoEntityTuplizer
,并通过返回一个
实例化器
实例来覆盖
构建实例化器(PersistentClass PersistentClass)
方法,该实例化器以您喜欢的方式构建实体。

我正在编写一个包装Hibernate以与数据库通信的应用程序。此应用程序需要下载一个包含更新的映射和POJO的.jar文件。然后,应用程序将关闭Hibernate,并使用新的映射和POJO将其恢复。我正在使用额外的类加载器来促进动态类加载。希望这能回答你的问题,darioo。这看起来很有希望;我很快会回来告诉你结果的。谢谢弗拉维奥!这似乎很有魅力。再次感谢你的帮助!请注意,对于使用此答案的任何人,我必须将示例中的entity mode=“dynamic map”更改为entity mode=“pojo”,以获得我想要的确切结果。
<hibernate-mapping>
    <class name="com.foo.Bar" table="Bar">