微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring Data JPA @Modifying 无法刷新更改

如何解决Spring Data JPA @Modifying 无法刷新更改

我在我们的应用程序中面临以下情况。下面我来解释一下

public void processRequest() {
     jparepositoryInstance.updateStatus("<status-before-queue-push>","<other-parameters>",idKey);
     queueSender.sendMessage("<message blob>");
     jparepositoryInstance.updateStatus("<status-post-queue-push>",idKey);
}

我们正在更新同一表中特定 idKey 的状态。在 JPA 存储库实例上使用以下注解

    @Modifying(clearautomatically = true,flushAutomatically = true)
    @Transactional
    @Query("<update query>")

我们有一个队列侦听器,它使用负载并从数据库获取相同的实体(使用 idKey)。我们已经观察到,在这获取操作期间,它在第一次 jparepositoryInstance.updateStatus(...) 之前获取旧实体。我们添加clearautomaticallyflushAutomatically 以在查询执行前后刷新任何挂起的上下文。

请帮助我解决这个问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。