【发布时间】:2019-05-30 09:58:59
【问题描述】:
我已经通过注释在继承关系中成功定义了一个序列生成器,大致如下:
@MappedSuperclass
public class DomainObject {
@Id
@Column( columnDefinition = "serial" )
@GeneratedValue( generator = "id_sequence", strategy = GenerationType.IDENTITY )
private long id = 0;
}
@Entity
@Table( name = "user" )
@SequenceGenerator( name = "id_sequence", sequenceName = "user_id_seq" )
public class User extends DomainObject {
}
在本例中,User 类的序列生成器从 DomainObject 中的 Generated value 注释中找到 id_sequence。
但是,如果我将 DomainObject 设为抽象类并将其置于另一个依赖项中(关于它的所有其他内容都保持不变),我会得到一个异常:
org.hibernate.AnnotationException: Unknown Id.generator: id_sequence
在更改后的版本中,DomainObject 依赖项位于 @ComponentScan 路径中,所以我不确定为什么这不起作用。有什么想法吗?
【问题讨论】:
标签: java hibernate java-annotations