【发布时间】:2015-02-13 21:02:22
【问题描述】:
如何在 hibernate 保存对象之前获取生成的对象 ID。代码如下:
@Id
@SequenceGenerator(name="MY_SEQ", sequenceName="MY_SEQ", allocationSize=1 )
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="MY_SEQ")
private long id;
有什么方法可以在不使用 currval('MY_SEQ') 上的选择的情况下做到这一点?
谢谢
【问题讨论】:
-
你试过 session.persist() 吗? persist 会将对象放入会话中,但尚未将其保存到数据库中,因此,它很有可能会为您生成序列。
-
我会收回我的答案..坚持不会立即给你生成的ID stackoverflow.com/a/5862722/258741
标签: java hibernate postgresql jpa orm