gpt4 book ai didi

java - JPA 刷新与提交

转载 作者:搜寻专家 更新时间:2023-10-31 08:11:55 24 4
gpt4 key购买 nike

在 JPA 中,如果我们调用 EntityTransaction.commit(),它会自动调用 EntityManager.flush() 吗?或者我们应该称他们两个?有什么区别?因为我有 JPA 问题,当我将一个实体插入数据库时​​,我调用了 persist()。在数据库中,数据已插入(可以获取),但该数据未显示在我的应用程序中(我使用 findAll() 获取它)。在另一个实体上,它出现了。有什么我不知道的吗?我正在使用标准的 Spring CRUD、JPA resource_local 和 postgresql。对不起我的英语,提前致谢

最佳答案

if we call EntityTransaction.commit(), does it automatically call EntityManager.flush()?

what is the difference?

在 flush() 中,数据的变化在遇到 flush 后反射(reflect)在数据库中,但它仍然在 transaction.flush() 必须包含在事务上下文中,除非需要,否则你不必显式地这样做(在极少数情况下),当 EntityTransaction.commit() 为您完成时。

Source

关于java - JPA 刷新与提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28392747/

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