gpt4 book ai didi

swing - eclipselink jpa 2.0 与 j2se swing 应用程序卡住

转载 作者:行者123 更新时间:2023-12-05 01:48:51 26 4
gpt4 key购买 nike

如何配置 eclipselink 以在 swing 应用程序中使用它直接连接到工作组环境中的数据库服务器。我目前正在使用它,但我的应用程序在一些交易后卡住(在 20-30 笔交易后)。我的 persistence.xml 是,

<property name="javax.persistence.jdbc.url" value="jdbc:mysql://192.0.0.1:3306/myhotel"/>
<property name="javax.persistence.jdbc.password" value="123"/>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="javax.persistence.jdbc.user" value="root"/>

我查看了它显示的线程转储..

SwingWorker-pool-1-thread-10" daemon prio=6 tid=0x03143400 nid=0xbec in Object.wait() [0x052ff000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at org.eclipse.persistence.sessions.server.ConnectionPool.acquireConnection(ConnectionPool.java:102)
- locked <0x27d6d7e0> (a org.eclipse.persistence.sessions.server.ConnectionPool)
at org.eclipse.persistence.sessions.server.ServerSession.allocateReadConnection(ServerSession.java:477)
at org.eclipse.persistence.sessions.server.ServerSession.executeCall(ServerSession.java:525)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:205)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:191)
.....................

还有awt线程甚至变成等待状态

"AWT-EventQueue-0" prio=6 tid=0x02c6d400 nid=0xfcc in Object.wait() [0x033ae000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at org.eclipse.persistence.sessions.server.ConnectionPool.acquireConnection(ConnectionPool.java:102)

请一些人帮助我!!!

最佳答案

默认的连接池大小是 32 个连接。如果您有超过 32 个事件事务,那么下一个请求将等待直到连接被释放。您是否在 EntityManager 上调用 close() 并在事务上调用 commit() 或 rollback()?

包含完整的 persistence.xml。

您还可以配置连接池等待时间,如果超过连接池大小则触发异常,

“eclipselink.jdbc.connections.wait-timeout”或“eclipselink.connection-pool.default.wait”(在 2.2 中)

或者增加池的大小,

“eclipselink.jdbc.connections.max”或“eclipselink.connection-pool.default.max”(在 2.2 中)

关于swing - eclipselink jpa 2.0 与 j2se swing 应用程序卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5485432/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com