生成了我的实体 ID,当我使用 DAO 而不是 Spring 数据 JPA 时它工作正常。
@Id
@Column(name = TABLE_COLUM_NAME_ID)
@GeneratedValue
private int id;
现在我已经开始使用 Spring data JPA,并且在我调用
repository.save(myboject)
之后, 或
repository.saveAndFlush(myobject)
, 我调用
myobject.getId()
.但是 id 永远不会被填充。
我搜索了我的数据库,对象在数据库中,并且 id 是正确的。
有谁知道为什么在我调用
save()
后没有设置 id ?我使用
entitymanager.save()
时没有问题.
请您参考如下方法:
repository.saveAndFlush();
方法:
MyObject savedObject= repository.saveAndFlush(newObject);
@GeneratedValue(strategy = GenerationType.AUTO)
)添加到相关字段(id
)中:@Id @Column(name = "id") @GeneratedValue(strategy = GenerationType.AUTO) public long getId() { return id; }