java - 管理 EJB 项目中的 hibernate 实体

标签 java hibernate jakarta-ee ejb

我在 NetBeans 中创建了一个“企业应用程序”,并将 hibernate 以及一些 hibernate 映射文件添加到了 Web 应用程序项目中。此外,我需要在 Web 应用程序中添加“HibernateUtil.java”、“hibernate.cfg.xml”和“hibernate.reveng.xml”。

但是,我想在我的 EJB 项目中管理这些实体/映射类,因为它们的行为看起来像企业 Bean,并且我想将它们与我的 Web 应用程序分开。我想知道如何做到这一点以及如何通过依赖项注入(inject)访问我的 Web 应用程序项目中的实体 ejb? “新建”菜单中还有一个选项:“为实体类创建 session bean”,想知道它是否对这个问题有任何用处?

编辑:使用 EJB3

最佳答案

您一开始就不应该将 JPA 相关文件放入 WAR 中。将它们保存在 EJB JAR 中,并从 WAR 引用您的 JAR 作为 Maven 中提供的运行时依赖项(或者使用提供的范围的类似物来选择您喜欢的构建工具)。当您的 EAR 中需要多个 WAR(不同的安全领域等)时,将业务逻辑保留在 EJB JAR 中将会得到返回。

一般来说,这就像将所有与 JPA 相关的内容放入 EJB JAR 中一样简单,然后它们也可用于来自 WAR 提供的托管 bean 的依赖项注入(inject)。

此外,考虑用 JPA 替换您的 Hibernate 特定配置,并让应用程序服务器为您解决所有问题。

关于java - 管理 EJB 项目中的 hibernate 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36868953/

相关文章:

eclipse - web.xml 丢失且 <failOnMissingWebXml> 设置为 true

java - Freemarker:迭代哈希中的嵌套列表

Java:list.listIterator()返回的对象属于哪个CLASS?

java - 是否可以使用 Mockito 完全停止某个方法的运行?

java - spring boot + jpa 延迟获取

java - 除主以外的 Hibernate OneToMany 关联

java - 使用复合主键和注释 : 映射多对多

java - Android 中的实时视频聊天流?

java - fragment 标签的使用

使用WARN HHH000174的Hibernate登录控制台