Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在spring上下文中配置自定义hibernate id生成器_Hibernate_Spring - Fatal编程技术网

在spring上下文中配置自定义hibernate id生成器

在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

我正在使用Spring和Hibernate,最近我创建了一个自定义Id生成器。现在,在我的Java域对象上,我有:

@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)。