EJB 2.0和EJB 3.0在对象方向上的主要区别是什么

时间:2013-05-19 14:14:39

标签: java ejb ejb-3.0

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

EJB 2.0 EJB 3.0 之间的对象方向是否存在其他关键差异?

2 个答案:

答案 0 :(得分:20)

EJB 2.0和3.0之间的主要区别在理论上列出如下

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

答案 1 :(得分:2)

你是对的,这些是EJB 2和3之间的主要区别。 通常,EJB 3从像Spring这样的轻量级注入框架中获得了最好的效果,并且使EJB尽可能接近常规POJO。

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