我想在保存到数据库之前获取实体的ID。如果我有足够的时间:

@Id private UUID id;

打电话来
Ebean.nextId(EbeanEntity.class);

返回值非常复杂(CE9D8486-2128-4A66-BEF4-4158B6DE2C7E)。我需要短值,比如当我使用长或字符串作为id(1,2,3…等等)。
nextid javadoc说“只有当idgenerator在这个bean类型上(比如db sequence或uuid)时,这才起作用。”如果我使用long或string作为id,ebean.nextid将返回null。
那么,在将项目保存到数据库之前,如何使用“db sequence”或其他方法获取项目的短id?

最佳答案

你就是不能。
在获取id之前,必须将bean保存到数据库中。
像这样的东西

Ebean.save(Object);
int id = object.id;

关于database - 在ebean先前保存实体到数据库中生成短ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12967167/

10-10 14:11