如何在Spring / JPA中实现多任务处理。
拥有执行两项任务的服务
这两项是独立的任务。因为没有必要等待其他任务完成。
在一些研究中,我发现有@Scheduled
可用于安排任务。
但这里的场景不同,是并行处理2个独立任务的解决方案。
这里可以使用哪种JPA API实现多次拍摄?
答案 0 :(得分:1)
我认为使用线程池来执行这些任务,而不是依赖于JPA API。 来自池的Thread1在Thread2上记录更新时执行搜索。 这样就简单多了即使您更喜欢使用其他ORM框架
答案 1 :(得分:0)
您可以使用@Async
注释来实现此目的。要在Spring引导中启用异步执行支持,您需要使用@EnableAsync
注释主类。
@SpringBootApplication
@EnableAsync
public class MyApplication{
}
然后将@Async
添加到您的查询中。
示例:
@Async
Future<User> findByFirstname(String firstname);
@Async
CompletableFuture<User> findByFirstname(String firstname);
@Async
ListenableFuture<User> findByLastname(String lastname);