hibernate插入select

时间:2009-07-10 18:10:32

标签: java sql hibernate

如何使用hibernate生成像insert into table (sequence.nextval, 'b0)这样的插入语句?

Hibernate当前选择sequence.nextval值,然后才使用该值在表中插入条目。

注意:我不太喜欢自定义id生成器。

2 个答案:

答案 0 :(得分:1)

Hibernate选择sequence.nextval,因为它必须将该值返回给您(例如,在您的实体上设置ID)。除非你做了一些非常深奥的事情,否则我强烈怀疑这会对性能产生很大的影响(例如,与实际的插入相比,它没什么用)。也就是说,您可以查看Hibernate的序列hi-lo生成器 - 它只会偶尔访问序列而不是每次插入。

答案 1 :(得分:0)

如果您使用的是Oracle 10或更高版本的客户端,请查看最新Hibernate版本中的序列标识,以执行您要求的操作。