当主键没有数据时,带有@Version的实体上的Spring数据JPARepository findById()将保持记



Am使用Spring Data JPA和hibernate作为springboot项目以实现持久性,每当方法findyById((方法在存储库(JPA CRUD存储库(上使用@Version注释进行乐观锁定的实体没有返回主键的数据时,它就会尝试将实体插入数据库。

我可以看到在日志文件中生成的插入查询。

有人遇到过这样的问题吗?请帮忙。

我从你的解释中注意到的事情对程序来说似乎很奇怪,因为这不应该发生,你只是在做一个简单的查询,它不应该取决于查询的输出。考虑一下在非常大的应用程序中,为了避免导致问题的意外行为,您必须在多大程度上查看不同的情况。

ORM(Hibernate等(的目标之一是确保应用程序无需担心就能满足您的需求。

现有应用程序一侧可能存在导致此问题的配置。在我看来,要理解这个问题,用最低要求创建另一个简单的项目,再试一次。

最新更新