使用EJB的优势

时间:2014-02-12 00:08:19

标签: java-ee ejb

我刚刚使用JAVA参加了企业Web开发课程,我们构建了一个使用Enterprise Java Bean的应用程序。我正在努力提高对EJB的理解,并且正在考虑使用EJB的优势。

对于我们的应用程序,我们将一个EJB注入到我们的servlet中。 EJB与业务逻辑层(它被部署为jar)进行了对话。我在考虑使用EJB的优势是什么,而不是让servlet直接与业务层JAR交互。

我想出了两个理由:

1)EJB允许您以模块化方式构造应用程序,因为每个EJB都可以负责某些类别的后端责任。

2)由于EJB被部署到EJB容器,因此可以通过它们的JNDI名称查找它们,因此如果在服务器上部署了其他应用程序,并且需要执行类似的功能,它们可以利用已经存在于服务器上的EJB。

我是否在正确的轨道上? EJB提供的优势是什么?我知道MDB与JMS API一起使用,但我更关注会话bean。

1 个答案:

答案 0 :(得分:2)

没关系,但你需要认识一些事情:

  1. 您可以在没有EJB的情况下以模块化方式构建应用程序,无论是否有Java。它是众多选择中的一种,并不是最佳选择。
  2. 应用程序可能会也可能不会以这种方式共享EJB;肯定不是会话EJB。
  3. EJB于1999年在Java One上发布。它们是规范的3.0版本。它比以前好多了,但还远非完美。
  4. Java EE应用服务器是重量级的东西。
  5. Spring和依赖注入框架允许您创建没有EJB的模块化Java应用程序。有些人更喜欢他们(像我一样)。
  6. Java EE应用服务器使用一个非常以请求/响应为中心的线程密集型解决方案。更现代的方法是使用vert.x或node.js
  7. 的基于事件的非阻塞IO

    你学习的很好,但不要误以为你已经达到了食物链的顶端。世界其他地方正朝着HTTP Web服务的方向发展,而不是EJB。