【问题标题】:What are the main differences between EJB 2.0 and EJB 3.0 in the orientation of an objectEJB 2.0 和 EJB 3.0 在对象方向上的主要区别是什么
【发布时间】:2013-05-14 04:31:26
【问题描述】:

我想尝试 EJB,我正在研究 EJB 3.0 背后的理论。我知道在 EJB 3.0 中您不必使用部署描述符,但可以使用注释,而且您不必编写 HomeRemote 接口。

EJB 2.0EJB 3.0 在面向对象方面是否还有其他关键区别?

【问题讨论】:

    标签: java ejb ejb-3.0


    【解决方案1】:

    理论上EJB 2.0和3.0的主要区别如下

    1. 在 EJB 3.0 中取消 home 接口使查找过程比在 EJB 2.0 中更简单。
    2. 注释的使用使 EJB 3.0 成为最新的技术,而 EJB 2.0 具有家庭和远程接口而不是注释。
    3. EJB 2.0 部署实体 bean 来访问数据库。 EJB 3.0 具有用于访问数据的 Java Persistence API,该 API 用于解决可移植性问题。
    4. EJB 3.0 性能更好,因为它使用 POJO 和元数据注释,这是一个新的介绍。 POJO 比 EJB 2.0 为引用对象而部署的 XMLDescriptor 和 JNDI 更快。 EJB 2.0 没有实现 POJO。
    5. EJB 2.0 在编写家庭和远程接口方面很繁重。 EJB 3.0 对使用任何标准接口没有任何限制。它是一个配置良好且简单的 POJO,不需要执行 EJB 2.0 使用的 ejbActive、ejbStore 等容器回调方法。
    6. 在 EJB 3.0 中,实体 bean 可以毫不费力地转换为 DAO,反之亦然。这在 EJB 2.0 中是不可能的。
      希望这可能会有所帮助

    【讨论】:

      【解决方案2】:

      你是对的,这些是 EJB 2 和 3 之间的主要区别。 一般来说,EJB 3 充分利用了 Spring 这样的轻量级注入框架,并使 EJB 尽可能接近常规 POJO。

      然而在 2013 年年中的今天,你为什么想知道 EJB2 和 EJB3 的区别? EJB2 已过时。学习版本 3.x,忘记旧版本。现在学习 EJB 2 就像在学习汽车驾驶之前学习骑马一样,因为人们在汽车发明之前曾经使用马作为交通工具。

      【讨论】:

      • 即使我同意你的回答,我还是忍不住要与大家分享,我现在在 2015 年的工作中,EJB2 到处都在使用。不过,有一些迁移到 EJB3 的计划。去图吧!
      • @jambriz,在我妻子工作的公司中,他们使用 Cobol。然而,这并不意味着这种语言已经过时,我认为没有任何理由(除了高科技行业的彻底崩溃)来学习这种语言。
      • 真的。请提供任何 EJB3 特定教程
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-18
      • 2014-12-31
      • 1970-01-01
      • 1970-01-01
      • 2023-03-26
      相关资源
      最近更新 更多