在spring上下文中配置自定义hibernate id生成器
我正在使用Spring和Hibernate,最近我创建了一个自定义Id生成器。现在,在我的Java域对象上,我有:在spring上下文中配置自定义hibernate id生成器,hibernate,spring,Hibernate,Spring,我正在使用Spring和Hibernate,最近我创建了一个自定义Id生成器。现在,在我的Java域对象上,我有: @GenericGenerator(name="...", strategy="com.acme.MyIdGenerator", ...) 我是否可以在spring上下文中创建/配置com.acme.MyIdGenerator,并让Hibernate使用它,而不是让Hibernate实例化它?如果您只是试图将生成器与使用者类(或多个类)隔离,可以在package-info.jav
@GenericGenerator(name="...", strategy="com.acme.MyIdGenerator", ...)
我是否可以在spring上下文中创建/配置
com.acme.MyIdGenerator
,并让Hibernate使用它,而不是让Hibernate实例化它?如果您只是试图将生成器与使用者类(或多个类)隔离,可以在package-info.java类中定义生成器。看
但是如果您真的想在XML中映射它,那么您必须将该特定实体映射为hbm.XML(),并将其添加到Spring上下文中的Hibernate配置中 哇,我不知道你可以给package-info.java添加注释。酷(+1)我目前没有hbm.xml,一切都是基于注释的。你是说即使我现在不使用hbm.xml,我也必须创建一个hbm.xml来实现这一点吗?@codecraig正如我所说,你可以使用注释方法,或者,如果你真的需要将其添加为xml,你应该创建一个hbm.xml文件,因为你不能真正使用Spring配置映射。您只需配置Hibernate(不是映射,AFAIK)。