org.hibernate.AnnotationException: Unknown Id.generator: ID_GENERATOR

joh*_*ohn 4 annotations hibernate

我正在尝试在包级别创建一个 @GenericGenerator 注释,以便包中的所有实体都可以使用它。

1)我有一个带有注释的 package-info.java 类:

@org.hibernate.annotations.GenericGenerator(name = "ID_GENERATOR",                  strategy = "enhanced-sequence", parameters = {
    @org.hibernate.annotations.Parameter(name = "sequence_name", value = "JPWH_SEQUENCE"),
    @org.hibernate.annotations.Parameter(name = "initial_value", value = "1000") })
package com;
Run Code Online (Sandbox Code Playgroud)

2)在同一个包中,我有一个具有以下属性的实体:

@Id
@GeneratedValue(generator = "ID_GENERATOR")
private Long id;
Run Code Online (Sandbox Code Playgroud)

这会导致异常“Unknown Id.generator: ID_GENERATOR”。如果我在实体类中包含 @GenericGenerator 注释,它工作正常。但是,我想将其移动到包级别,以便我可以在其他实体中重用它。

断开连接的任何想法?

谢谢!

Ale*_*son 5

您可以将实体代码更改为:

@Id
@SequenceGenerator(name="my_id_generator", sequenceName="ID_GENERATOR")
@GeneratedValue(generator="my_id_generator")
private Long id;
Run Code Online (Sandbox Code Playgroud)

来源:链接