为什么我应该使用 EJB?我能从中得到什么是其他方式无法得到的?
与 POJO 相比,使用 EJB 有什么优势?
EJB由 Java EE 应用程序服务器管理和监视,它负责通过依赖注入创建它们并将它们提供给客户端,并管理它们的生命周期。EJB 由应用服务器保存在池中。每次客户端获取 EJB 时,应用程序服务器都会从池中挑选一个并将其分配给客户端。在客户端完成后(客户端没有对它的引用),它将返回到池中并准备分配给其他客户端。
池化对于应用程序的可扩展性非常重要。您不必对已部署的应用程序进行任何更改来处理不断增长的负载,并且由于资源数量有限,如果负载过高,您的应用程序不会让应用服务器屈服。一切都是通过配置应用服务器来完成的。
EJB 可以(如果有相应的注释)处理事务和异步执行,并且可以暴露给远程客户端。
有四种类型的 EJB:
会话 bean
消息驱动的 bean
虽然 EBJ 提供了所有这些,并且可能提供其他东西,但 POJO 只是 POJO,仅此而已。