问题标签 [persistence-unit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
16045 浏览

java - netbeans IDE:如何删除数据源

我有一个包含持久性单元的 Java Web 应用程序。在这个持久性单元中,我可以选择一个现有的数据源或创建一个新的数据源。当我在 glassfish 服务器的构建上运行这个 Web 应用程序时,数据源是在 glassfish 服务器的构建上创建的。还会创建一个连接池。

我可以在 glassfish 服务器上删除数据源和/或连接池。这不会从 Netbeans IDE 中删除数据源。当我再次运行 Web 应用程序时,将重新创建数据源和连接池。

如何删除 netbeans IDE 中的数据源和连接池?我在任何地方都找不到这个功能。

我想删除现有的数据源和连接池,因为我对新的数据源/连接池有问题。为了确保数据源/连接池之间不会发生混淆,我想删除不再使用的旧的。

0 投票
1 回答
9048 浏览

tomcat - 如何解决Tomcat上的持久性单元

我在 Glassfish 上设置了这个 Web 项目,但由于遇到了一些问题,我决定迁移到 Tomcat。

但是现在我的持久性类抛出以下错误

我尝试将persistence.xml 放在不同的文件夹中,但没有奏效。

持久性.xml

ConnectionUtil.java

我的 persistence.xml 位于 src/META-INF 下

0 投票
1 回答
4205 浏览

jpa - JPA - 使用多个数据源来定义访问控制

我对 JPA 和 JSF 完全陌生,希望您能帮助我解决我的问题。我的应用程序是使用 JSF 2.0 框架构建的,使用在 Glassfish 3+、MySQL 上运行的 JPA 2.0/EclipseLink。

我使用数据源设置了一个名为“loginPU”的持久性单元:“jdbc/loginDataSource”“jdbc/loginDataSource”使用“login1”(在 .table 中定义)连接到 MySQL,mysql并且user只能访问customer. usercustomerroles表,只有选择权限。

我在 Glassfish JDBC 资源中创建了 2 个其他数据源“jdbc/admin”和“jdbc/staff”,并且都具有不同的权限

登录/认证场景是:

  1. 使用基于表单的身份验证(用户名和密码)的用户登录
  2. 使用持久性单元“loginPU”和“jdbc/loginDataSource”创建 EntityManageFactory
  3. 创建查询以检索用户角色
  4. 如果用户角色是管理员,则使用“jdbc/admin”数据源进行连接
  5. 如果用户角色是人员,则使用“jdbc/staff”数据源进行连接

我上面第 2 项的代码如下所示:

我什至将我的 EntityManagerFactory 保存在会话属性中并在 JpaController 类中检索它

问题:我怎样才能达到 4 号或 5 号?那有可能吗?是否可以将任一数据源分配给“loginPU”持久性单元?我设法使用 loginPU 和 jdbc/loginDataSource 建立连接,然后使用 jdbc/admin 数据源进行连接,但是当我访问其他实体时,它会抛出错误并默认为 jdbc/loginDataSource

注意:我使用由 netbeans 创建的 JpaController 类,以及会话 bean 来管理实体。我的 JpaController 类使用

我的会话 bean 都是 @Stateless,我尝试使用 @PersistenceContext 和 unitName 和没有 unitName 但没有运气

我尝试在persistence.xml中使用多个持久性单元,希望使用基于角色的持久性单元名称连接用户,但是在部署到服务器时它给了我错误。

我阅读了有关应用程序管理的持久性容器管理的内容,我想我想要实现的是使用应用程序管理,但不知道该怎么做。

如果我要使用容器管理的持久性,是否可以使用多个数据源?非常感谢任何建议。

感谢您提前提出任何意见或建议。

[解决了]

  1. 首先,我将我的 persistence.xml 定义如下:

    /li>
  2. 我的会话 bean 中没有使用任何 @PersistenceUnit 或 @PersistenceContext。(我使用的是 Netbeans,这些 bean 是在我从实体类创建 JSF 页面时创建的)

  3. 在所有会话 bean 中,它们看起来像这样:

    /li>
  4. 上面的登录场景(5项)变成了7个:

  1. 使用基于表单的身份验证(用户名和密码)的用户登录
  2. 使用持久性单元“loginPU”和“jdbc/loginDataSource”创建 EntityManageFactory
  3. 创建查询以检索用户角色
  4. 如果用户角色是管理员,则使用“jdbc/admin”数据源进行连接
  5. 如果用户角色是人员,则使用“jdbc/staff”数据源进行连接

  1. 使用 emf.close() 删除或清除在第 2 项中创建的 EntityManagerFactory;
  2. 保持在 HttpSession 的第 4 项或第 5 项中创建的新 EntityManagerFactory
0 投票
1 回答
192 浏览

java - 当应用程序被销毁时,@PersistenceUnit 会关闭我的 EntityManagerFactory 吗?

如果我使用以下

此注释是否会确保 EntityManagerFactory 在应用程序被销毁时正常关闭?

0 投票
2 回答
2471 浏览

jakarta-ee - 将实体管理器注入同一类的多个 bean

我有一个具有一些数据库操作的会话 bean 类。我需要将该类与多个数据库一起使用,因此我配置 ejb-jar.xml 以从该类创建会话 bean,每个 bean 用于每个数据库。这是代码。

这是ejb-jar.xml

当我只创建一个会话 bean 时,它按预期工作。但是我创建了两个以上,它在部署时引发异常:

这里发生了什么。任何人都可以帮忙吗?任何建议或意见均被采纳。

名和

0 投票
3 回答
6920 浏览

jpa - How to store persistence.xml with other configuration files

I'm using EclipseLink as my JPA implementation. Our project has a directory where we keep all of our config files, and I would like to store my persistence.xml file in the config directory, but cannot find any way to tell createEntityManagerFactory to look there to find the persistence-unit.

0 投票
1 回答
514 浏览

spring - 我可以在 tomcat 上使用一个休眠持久性单元并在部署的战争之间共享它吗?

我有一个在 tomcat 上运行的应用程序,我们有多个战争。

  1. War1 是一个用于配置数据库的 Web 应用程序。
  2. War2 用于通过网络服务上传数据。
  3. War3 用于通过 Web 服务获取数据。
  4. War4 是另一个用于在仪表板中查看数据的 Web 应用程序。

我们使用hibernate/jpa 和spring。这些类是带注释的,我们没有任何一个persistence.xml。所有配置都在 spring 上下文文件和注释中。这是弹簧文件:

我如何确保所有战争都使用一个持久性单元?我希望能够使用ehcache,但我知道如果他们都使用自己的PU,我将无法使用它。

我唯一的选择是迁移到 JavaEE 并将其全部打包在 EAR 中吗?

谢谢!

0 投票
1 回答
8255 浏览

spring - 具有更多数据源的spring jpa hibernate

我必须在 Hibernate,Jpa 的应用程序(spring)中使用两个不同的数据库。我想将不同的表直接定义到不同的数据源。所以我使用两个不同的持久性单元,我尝试使用

将不同的表放入不同的包中。但它不起作用。事实上所有的表都是第一个数据源。然后我尝试将类的名称写入持久性 XML 文件

和 it.two.app.domain.second.OtherTable

但是当我运行日志时说表'firstDB.other-table'不存在,我使用到服务文件中

你有一些想法吗?这是数据源 XML 文件

解决方案!!!!!!我不明白这个问题。简单地

0 投票
1 回答
508 浏览

persistence-unit - 同一事务上的多个持久性单元

我正在尝试使用 2 个不同的数据库实现事务。
我目前为每个数据库都有一个持久性单元,并且想在同一个事务上写入模式 SA 上存在的表 A 并写入模式 SB 上的表 B 上。

我正在使用 weblogic 和 eclipselink。

我进行了一些搜索,但没有发现在同一事务上使用多个持久性单元的示例。

有人可以告诉我这样做的正确方法吗?

谢谢你

0 投票
1 回答
637 浏览

hibernate - Java persistence.xml 多个持久性单元“找不到符号...导入”

我的 NetBeans-Maven-Project 有问题。如果我将另一个 Persistence-Unit 添加到具有相同实体的相同 persistence.xml 中,我会得到一些我不理解的异常。

如果我取消注释第二个 PU,我会得到一些例外:

MaterialsLoginRESTfulWSTest 是一个 jUnit-Test,第 9 行是“import com.xxx.plugin.entities.Businesspartner”。

我已经黔驴技穷了。有没有大神帮忙解决下...

最好的问候扎克