gpt4 book ai didi

java - 什么时候应该在 Java EE 应用程序中使用 POJO(而不是 EJB)?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:25:54 26 4
gpt4 key购买 nike

我目前正在学习 JAVA EE。为此,我使用了 Oracle Java EE 7 教程。根据本教程的第 34.1.4 节,他们为教程示例使用了一些非 EJB 帮助程序类。 http://docs.oracle.com/javaee/7/tutorial/doc/ejb-basicexamples001.htm

我想知道在什么情况下我应该创建一个 EJB 类,在什么情况下我应该使用一个普通的帮助程序类。我已经阅读了使用 EJB 的好处。但是否存在使用 POJO 更好的情况?

最佳答案

简短的回答是“总是,除非您需要特定的 EJB 工具”。

较长的答案如下。多年前,当使用 3.0 之前的 EJB 时,EJB 是“沉重的”东西。您必须实现接口(interface),从基类继承您的 bean 等。不久之后,EJB 只能在容器中使用。这意味着为 EJB 编写单元测试非常困难。

因此,人们使用了以下策略。当 EJB 需要时,他们在包装的 POJO 中实现了他们所能实现的一切。该解决方案很冗长(因为有些东西是重复的)但非常模块化且可测试性更好。

自从引入 EJB 3.0 以来,POJO 或 EJB 之间(几乎)没有区别。实际上 EJB 是一个带有一些注解的 POJO。这意味着您不必创建 POJO 然后用薄 EJB 层包装它。您可以在您的类中实现所有内容(如果需要,可以将其称为 POJO),然后使用注释将其转换为 EJB。委托(delegate)仍然是好的,所以越多的代码越少 EJB-annotations 越好。

关于java - 什么时候应该在 Java EE 应用程序中使用 POJO(而不是 EJB)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25784705/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com