我正在使用Hibernate访问MySQL,并且有一个带有自动递增主键的表。
每次我在表中插入一行时,都不需要指定主键。但是,在插入新行之后,如何立即使用hibernate获取相对主键?
或者我可以只使用jdbc来做到这一点?
保存hibernate实体时,id将为您填充该属性。所以如果你有
id
MyThing thing = new MyThing(); ... // save the transient instance. dao.save(thing); // after the session flushes, thing.getId() should return the id.
实际上,我几乎总是assertNotNull在测试中对持久实体的ID进行一次操作,以确保保存有效。
assertNotNull