当前位置: 首页 > 知识库问答 >
问题:

第一次查询后连接关闭异常

宦子琪
2023-03-14

我已经编写了一个Web服务使用JAX-WS在Glass 在GlassFishe.我从数据源获取数据库连接,并将其传递给jOOQ。

Context context = new InitialContext();
DataSource dataSource = (DataSource) context.lookup("jdbc/datasrc");
Connection connection = dataSource.getConnection();
DSLContext create = DSL.using(connection, SQLDialect.MYSQL);

在请求结束时(基于这个问题),我关闭与Apache DBUtils的连接:

DbUtils.closeQuietly(connection);

问题是我只能发送一个请求。之后,我得到连接关闭异常。GlassFish中的连接池配置为:

Transaction Isolation: read-commited
Isolation Level:  Guaranteed 
Resource Type: javax.sql.ConnectionPoolDataSource
Datasource Classname: com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource

我正在关闭物理连接吗?我正在使用MySQL 5.5。32戴软呢帽19戴玻璃鱼4建89。有人能帮忙吗?

[更新]

我已经降级到GlassFish 3.1。2.2,同样的代码也可以正常工作。GlassFish 4中的连接池行为是否发生了变化?

共有1个答案

蔡修远
2023-03-14

我相信这可能是版本中的一个错误。你可能想报告这个https://java.net/jira/browse/GLASSFISH

 类似资料:
  • 我使用weblogic应用服务器和oracle数据库。我使用jdbc与oracle数据库通信。我从weblogic数据源获得连接,并向表中插入一条记录。问题是,当我想关闭连接(插入数据库后)时,我会遇到一个异常(连接已经关闭)。这是我的代码: 但是联系。close语句引发异常: 我试图避免连接。close语句(因为我教过连接是自动关闭的!!但过了一段时间,所有的连接都打开了,因此引发了一个异常)

  • 问题内容: 我在hibernate状态下使用jpa。我有以下方法: 可以,但是它关闭了与数据库的连接。当秒被执行时 引发什么原因 我的配置: 编辑 我不知道为什么“ firstJDBCTemplateQuery”关闭数据库连接。如何解决这个问题? 堆栈跟踪: 编辑 我检查了堆栈跟踪。 编辑 我用 是 是 编辑调试结果 : 启动Beginin交易: /////////////////////////

  • 我们目前正在处理这个函数,它必须部分使用数据库,部分使用服务,而这些操作非常耗时。所以,一般来说,这里有一个事务性方法,其代码如下: 所以最大的问题是——我是否应该在A点关闭连接,然后从B点的连接池再次获取它,以便其他servlet可以在我与服务交互时使用该连接?我的猜测是应该的,但这会损害我的事务吗?

  • 我在上一篇文章java中试图解决我的问题。sql。SQLRecoverableException:已关闭连接。我尝试了c3p0连接。财产如下:, 在JBOSS中部署之后,我开始测试我的web。一开始,它工作得很好,甚至更快。10分钟后,继续加载并超时。当通过服务器时。日志我得到了如下一些警告消息。 请给出一些解决这个问题的想法。

  • 我在运行使用Netty的服务时遇到了问题。它启动和工作正常,但只有一次。在此之后,不接受任何连接(它们将立即被删除)。 当我第一次使用(示例端口,随便什么)连接到服务器时,一切正常: 客户端会话: 服务器日志: --编辑2-- 只要连接处于活动状态,服务器就可以正常工作--在关闭连接之前,我可以轻松地交换请求/响应。 不要被IP地址迷惑,这是一个转发到Docker的本地端口,应用程序就是在那里启动

  • 我最近转到了一个项目,在这个项目中我遇到了很多这种性质的代码--(这是使用jdbc postgres驱动程序) 显然,这段代码已经在生产中运行了一段时间,没有引起问题。 为了进一步澄清,如果我的理解是正确的(即,statement和resultset必须在连接关闭之前而不是之后关闭),我需要在catch和finally之间重复一些代码。修订后的代码如下所示。这可以简化吗? 只是为了透视,这段代码是