理解如何创建实体管理器或者我是不是可以在 JAVA EE 中生成它们的问题 [重复]

Posted

技术标签:

【中文标题】理解如何创建实体管理器或者我是不是可以在 JAVA EE 中生成它们的问题 [重复]【英文标题】:issue in understanding how to create entity manager or if I can generate them in JAVA EE [duplicate]理解如何创建实体管理器或者我是否可以在 JAVA EE 中生成它们的问题 [重复] 【发布时间】:2016-11-29 19:24:14 【问题描述】:

我正在 glassfish 服务器上使用 JPA 和 JSF primefaces 创建一个 JAVA EE 项目。


开发环境为ECLIPSE IDE

这是我到目前为止所做的:

我在 SQLServer 中创建了数据库(3 个表,没有那么复杂的结构) 我使用 JPA 从表中生成了实体(eclipse 提供了这个选项...)

这是我想做的:

为我的实体生成实体管理器(会话 bean),以便我可以在我的数据库中管理和创建记录 最后我将使用 primefaces 创建一个 UI 来显示、编辑和管理这些记录。

问题:我在正确的道路上吗? (概念级别,或者我遗漏了什么)+ 如何执行下一步,即为我的实体生成实体管理器,提前致谢!

【问题讨论】:

我一般只用eclipse来生成实体和DAO的 实体经理你自己创建的?这有点复杂......,你也使用休眠生成DAO吗? 当你生成所有东西时,你究竟学到了什么? @Gimby 有理由研究如何生成这些东西......我正在从事其他项目,太糟糕了,我认为我没有时间为创建每个会话 bean 【参考方案1】:

您走在正确的道路上,但实体管理器和会话 bean 并不相同。您将在会话 bean 中使用 EntityManager,如下所示:

@Stateless
public class MyService 

    @PersistenceContext
    private EntityManager em;

确保您的persistence.xml 文件存在。更多阅读和示例可以在here找到。

示例persistence.xml 文件使用通过JNDI 位于jdbc/MyOrderDB 的容器管理数据源:

<persistence>
    <persistence-unit name="OrderManagement">
        <jta-data-source>jdbc/MyOrderDB</jta-data-source>
    </persistence-unit>
</persistence>

【讨论】:

明白了,所以我不能生成会话 bean,对吧?我只需要自己创建它们 Eclipse 确实有一些用于创建 EJB 的模板,但就其中的方法而言,您必须根据您需要的功能来实现它们。 是的,我可以看到知道...我突然想到 JAVA EE 就像 JAVA... IDE 可以为您创建一个具有基本功能的骨架,例如 crud 的作用.不幸的是,情况并非如此 CRUD 已在 EntityManager 中抽象出来。对于更复杂的查询,我建议查看CriteriaQuery API。【参考方案2】:

您的方法看起来简单直接。没关系。 为了进一步进行,本文可以为您提供帮助。 http://www.informit.com/articles/article.aspx?p=1671224&seqNum=2

如果这有帮助,请告诉我。

【讨论】:

这看起来是一个很好的例子,可以理解构建应用程序的一切工作原理。我还注意到他创建了会话 bean 和实体管理器。所以我认为这证实了我无法生成它们。谢谢!

以上是关于理解如何创建实体管理器或者我是不是可以在 JAVA EE 中生成它们的问题 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 JDO 持久化管理器?

Java,设计模式:用例和参与者管理器

如何提供模拟实体管理器来测试服务类?

命令行 nashorn 脚本 (jjs) 无法创建实体管理器。为啥?

如何在 java swing 运行时更改语言

附加实体是否必须在JPA中合并?