gpt4 book ai didi

jpa - Spring数据jpa保存无法获取id

转载 作者:行者123 更新时间:2023-12-03 10:53:31 26 4
gpt4 key购买 nike

生成了我的实体 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;
    }

    关于jpa - Spring数据jpa保存无法获取id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16351156/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com