5

我正在开发一个使用 Hibernate JPA 和 Spring MVC 的项目,我正在研究实现一个异步服务,我意识到我分别从 Spring 和 EJB 获得了两个注释 @Async 或 @Asynchronous。

这里的一切对我来说都是新的,我会选择 EJB @Asynchronous 看看它是如何进行的,我想知道一种解决方案是否比另一种更有优势?

4

1 回答 1

6

@Async并且@Asynchronous在他们的能力上是相同的。它们都在单独的线程池中运行给定的方法,并且它们都允许voidFuture<T>结果类型。它们之间没有功能上的不同。Spring 的唯一(次要)优点是您可以完全控制底层线程池,而@Asynchronous这可能是在特定于容器的基础上配置的。

如果您的应用程序已经使用 Spring MVC,@Async这似乎是一个自然的结果。

于 2013-01-30T19:36:37.470 回答