java - Eclipse 中的 JPA 项目和 EJB 项目有什么区别?

标签 java eclipse jpa jakarta-ee ejb

什么时候使用哪个?

当我想要 JSF + 无状态 Bean + JPA 实体应用程序时,我需要 EJB 项目和 Dynamic Web 项目集成到 EAR 项目中?

最佳答案

EJB 项目是专注于企业 Java Beans 开发的项目。通常,EJB 依赖于使用 JPA 技术实现的实体 Bean(将 JPA 视为 EJB 的依赖项)。

您可以选择独立于 EJB 创建 JPA 项目的原因是有些人可能不想使用(或不需要)EJB,但他们仍然需要使用 ORM 框架,例如JPA。这种情况可能是一个 Web 项目(即 JSF),它会直接使用 JPA 来实现持久性(没有 EJB)。

要点是,虽然 EJB 3 使用 JPA 来实现持久性,但您不必在项目中使用 EJB(除非您需要这样做)才能从 JPA 等 ORM 框架中获益。

现在,要在 eclipse 中的 EJB 项目上启用 JPA,请右键单击该项目,转到“Project Facets”选项并选择 JPA facet。通过这样做,eclipse 将添加所需的库、创建必要的工件 (persistence.xml) 并在您的 IDE 上启用 JPA 相关工具。

关于java - Eclipse 中的 JPA 项目和 EJB 项目有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5894530/

相关文章:

java - 检测损坏的 socket

c++ - Eclipse 不解析 gcc 输出

java - 未检测到我的 JPA 提供程序

java - 使用spring data jpa执行多参数存储过程并映射ResultSet到非实体类

java - 我怎样才能在没有eclipse的情况下运行我的java程序?

java - 无法反序列化对象。无法将类型 java.util.Date 的值转换为字符串

java - 如何在 Eclipse 中启动基于 SVM 的分类项目?

java - JPA 在刷新之前保存 transient 实例

java - 如何解决抽象类错误的问题

java - 无法在 Eclipse 中使用现有的 Java 包?