gpt4 book ai didi

java - JPA如何在持久化后从数据库中获取值

转载 作者:行者123 更新时间:2023-11-30 06:23:48 24 4
gpt4 key购买 nike

如何获取保存到数据库中的值

entityManager.persist

在调用 persist 而不是任何其他值后,我能够从数据库中获取主键值。例如

public void create(Project project) {
entityManager.persist(project);
System.out.println("Id -- " + project.getProjectId());
System.out.println("no -- " + project.getProjectNo());
}

从上面的代码中,我能够从 project.getProjectId 获取新插入的值,但是无法获取 project.getProjectNo

我之所以能得到projectId是因为它是主键?

persist后如何获取getProjectNo的值?

最佳答案

尝试使用数据库刷新实体以获取插入的触发器值。

public void create(Project project) {
entityManager.persist(project);
entityManager.getTransaction().commit();
project = entityManager.find(Project.class, project.getProjectId());
entityManager.refresh(project);
System.out.println("Id -- " + project.getProjectId());
System.out.println("no -- " + project.getProjectNo());
}

Documentation

关于java - JPA如何在持久化后从数据库中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17856917/

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