gpt4 book ai didi

java - 如何在 spring data JPA 中制作多个保存方法?

转载 作者:行者123 更新时间:2023-12-05 04:20:21 24 4
gpt4 key购买 nike

我在 spring data jpa 中默认保存方法的性能很慢。所以,我决定让保存方法异步工作,因为我不需要在这个特定方法中响应。

@Repository
public interface WorkplaceRepo extends JpaRepository<Workplace, Long> {
@Async
public <S extends Workplace> S save(S workplaceE);

导致整个项目的所有save方法都开始调用这个异步方法的问题。问题是:如何在不丢失其中一种的情况下使用两种保存方法(默认版本和异步版本)

我想使用 native 查询创建自定义插入方法,但实体有太多的列和外键,我不确定它是否能正常工作。

最佳答案

我建议创建新的存储库 WorkplaceRepoAsync 使用一种保存方法,如下所示:

@Repository
public interface WorkplaceRepoAsync extends Repository<Workplace, Long> {
@Async
public <S extends Workplace> S save(S workplaceE);
}

更新

更好的解决方案是使用 @Async 逻辑方法创建 WorkplaceService

@Repository
public interface WorkplaceRepo extends JPARepository<Workplace, Long> {}
@Service
public class WorkplaceService {

@Inject
private WorkplaceRepo workspaceRepo;

@Async
public Workspace saveAsync(Workspace workspace) {
workspaceRepo.save(workplace);
}
}

关于java - 如何在 spring data JPA 中制作多个保存方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74514558/

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