【问题标题】:Using an EJB outside container在容器外使用 EJB
【发布时间】:2021-04-22 19:44:29
【问题描述】:

我目前正在创建一个 J2EE 应用程序,它的一部分在容器外运行,使用 ServletContextListener 来启动它。

但是我还需要从这部分访问数据库。

我目前有一个实体和一个无状态会话 bean 来获取使用 EntityManager。

我测试了多个东西(EntityManagerFactory、Initial Context、EJBContainer),但我没有设法让它们中的任何一个工作。

我需要怎么做?

【问题讨论】:

    标签: java glassfish ejb java-ee-8


    【解决方案1】:

    你不需要 EJB,实际上你不能在容器外创建 EJB。您需要 JPA、OR-mapper 和 JDBC。 这些通常在您的 EJB 容器中正确配置。在容器之外你必须自己做。

    您必须正确定义您的依赖关系,以便正确的 JDBC-Driver 可用和 OR-Mapper(可能是 eclipselink 或 hibernate?) 之后,您需要定义一个 presistence.xml 来定义要使用的实体并定义如何通过 JDBC 访问 DBMS。

    如果所有配置正确,EntityManagerFactory 是为 persistence.xml 中定义的持久性单元创建 EntityManger 的正确方法。

    网上有很多例子。例如:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多