java - EJB 3 的最佳特性

标签 java jakarta-ee ejb-3.0

场景

  • 您已使用 EJB 版本 3 开发了一个 Web 应用程序。
  • 系统已部署、交付并供客户使用。

如果你必须从头开始重写系统,你会再次使用 EJB 吗?

:不要回答这个问题,回答this one而是。

:根据您的个人经验,提供 EJB 解决的一个重要的、真实的问题。

让答案只包含一个问题。这将让其他读者投票选出 EJB 的最佳特性。

最佳答案

我认为这取决于您所谈论的 EJB 版本。让我们讨论仅有的两个相关 (IMO) 版本。

EJB 2.1 可能仍被遗留系统中的某些人使用。它们确实最常用作 RPC 抽象。他们还提供了一个基本的 ORM(对象关系映射)系统。正如您所提到的,提供了事务支持。因此,如果您正在构建一个希望与远程系统通信、传输面向对象数据并以事务方式进行的系统,您可能会发现 EJB 值得付出努力。否则,我会说远离。

然而,EJB 3.0 已经有了很大的改进。它具有以前版本的所有功能,但以更直接的方式实现。它还提供了一个与 Spring 不同的相当简单的 Inversion-Of-Control 框架,以及一个相当不错的 JPA(Java Persistence API)形式的 ORM。我使用过 EJB 3.0,并且非常喜欢它。您可以像支持 Spring 一样支持使用 EJB 3.0,而且它还有一些更高级或企业级的可用功能。

关于java - EJB 3 的最佳特性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/105544/

相关文章:

java - 从 Java 无状态 EJB (Java EE-6) 发送电子邮件

java - 我无法设置我的 jndi.properties 来访问 Jboss 5 上的远程 EJB

java - 如何从数据库 SQLite Java 中检索多个数据(行)

java - 如何使用 hibernate validator 检查长度为 5 或 9?

java - 有什么可以用 Servlet 而不是 JSP 来实现的,反之亦然

java - JBoss 在 war 文件中使用 @WebService 和 @Stateless 时忽略 application.xml 中的上下文路径

java - 动态配置 Message Driven Bean 中的 MappedName 注解

java - 使用 Gson TypeAdapter 以顺序不敏感的方式反序列化 JSON 对象

java - 知道为什么 Collections.sort() 在下面的程序中不起作用吗?

jakarta-ee - 事务管理和 CDI