Spring Data JPA - 在环境/应用程序之外看不到更改

时间:2016-05-26 15:17:43

标签: java spring spring-data spring-data-jpa mariadb

我使用Spring数据jpa来存储和读取不同应用程序中的实体。以下是执行的步骤:

  1. 应用程序1通过jpa存储库创建一个实体,并使用saveAndFlush()方法
  2. 将其存储到数据库中
  3. 然后它将一个事件发送到队列说,实体已创建
  4. 此事件由另一个应用程序读取(让我们说应用程序2),然后尝试读取实体并对其进行处理
  5. 以下是用于存储对象的示例方法:

    @Transactional
    public Entity createEntity(final Entity entity) {
        return entityRepository.saveAndFlush(entity);
    }
    

    根据文档,@Transactional注释应确保在方法执行完成后对象被持久化。但是,当应用程序2收到一个事件并尝试查找实体(通过id)时,找不到它。我正在使用Maria DB和Spring Data JPA 1.9.4。

    在saveAndFlush调用之后,我们还需要做任何其他事情来强制提交硬件吗?

0 个答案:

没有答案