使用jpa注释在一个事务中保存数据并在另一个事务中获取数据

问题描述 投票:0回答:1

我正在使用JPA处理Spring MVC,其中m使用基于注释的结构。我必须在数据库中上传excel文件,其中我需要使用更新列方法更新名为status的列,然后将数据保存在表中,然后需要从具有状态的表中获取所有记录(已更新)。在这种情况下一切正常,除非我从数据库中获取记录,它获取旧数据,它不从表中获取更新记录。我在方法中使用事务注释。

我尝试过使用@transaction(propagation = propagation.required_new),但它也会获取旧数据。

任何人都可以建议我什么?

@Transactional
    @Override
    public void updateStatus() {
        lotAcceptanceRateRepository.updateStatus();
    }

@Transactional
    @Override
    public void saveList(List<LotAcceptanceRate> lotAcceptanceRateList) {
        lotAcceptanceRateRepository.save(lotAcceptanceRateList);
    }

@Transactional(propagation = Propagation.REQUIRES_NEW)
    @Override
    public List<LotAcceptanceRate> getAllRecordsFromTable() {
        return lotAcceptanceRateRepository.OrderByStatusAsc();
    }

这些都是我用来运行事务的方法。

java spring spring-data-jpa spring-transactions transactional
1个回答
0
投票

尝试使用

 @Modifying
 @Transactional

保存和更新时

© www.soinside.com 2019 - 2024. All rights reserved.