为什么使用带有Oracle 10g方言的Hibernate使用JPA创建名为hibernate_sequence的序列?

Jav*_*cky 7 java orm hibernate jpa oracle10g

我所有的实体都使用这种类型 @Id

@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "MYENTITY_SEQ")
@SequenceGenerator(name = "MYENTITY_SEQ", sequenceName = "MYENTITY_SEQ")
@Column(name = "MYENTITY", nullable = false)
private Long id;
Run Code Online (Sandbox Code Playgroud)

要么

@Id
@Column(name = "MYENTITY")
Run Code Online (Sandbox Code Playgroud)

我发现hibernate_sequence始终创建一个名为Oracle的序列.为什么会这样?我怎么能避免这种情况?

我正在使用JPA1与Hibernate 3和Oracle 10g方言.

小智 10

HIBERNATE_SEQUENCE与REVINFO实体一起用于创建修订号.如果要使用不同的序列,则应创建自定义修订实体.

帮助:http: //docs.jboss.org/hibernate/envers/3.5/reference/en-US/html/revisionlog.html


Jav*_*cky -3

我怀疑这是因为我正在使用 Hibernate Envers,因为我已经仔细检查了我的实体,并且所有实体都有正确的 @Id 映射。

  • 解决办法是什么? (5认同)