如何使用hibernate生成像insert into table (sequence.nextval, 'b0)
这样的插入语句?
Hibernate当前选择sequence.nextval
值,然后才使用该值在表中插入条目。
注意:我不太喜欢自定义id生成器。
答案 0 :(得分:1)
Hibernate选择sequence.nextval
,因为它必须将该值返回给您(例如,在您的实体上设置ID)。除非你做了一些非常深奥的事情,否则我强烈怀疑这会对性能产生很大的影响(例如,与实际的插入相比,它没什么用)。也就是说,您可以查看Hibernate的序列hi-lo生成器 - 它只会偶尔访问序列而不是每次插入。
答案 1 :(得分:0)
如果您使用的是Oracle 10或更高版本的客户端,请查看最新Hibernate版本中的序列标识,以执行您要求的操作。