一尘不染

如何使用Hibernate在MySQL中获取自动增量主键值

hibernate

我正在使用Hibernate访问MySQL,并且有一个带有自动递增主键的表。

每次我在表中插入一行时,都不需要指定主键。但是,在插入新行之后,如何立即使用hibernate获取相对主键?

或者我可以只使用jdbc来做到这一点?


阅读 235

收藏
2020-06-20

共1个答案

一尘不染

保存hibernate实体时,id将为您填充该属性。所以如果你有

MyThing thing = new MyThing();
...

// save the transient instance.
dao.save(thing);

// after the session flushes, thing.getId() should return the id.

实际上,我几乎总是assertNotNull在测试中对持久实体的ID进行一次操作,以确保保存有效。

2020-06-20