当前位置: 首页 > 面试题库 >

Java JDBC连接状态

张亦
2023-03-14
问题内容

我正在(成功)使用以下命令连接到数据库:

java.sql.Connection connect = DriverManager.getConnection(
  "jdbc:mysql://localhost/some_database?user=some_user&password=some_password");

一段时间后,我应该检查什么以检查连接是否仍处于打开状态?
我希望有类似的东西connect.isConnected();可供我使用。


问题答案:

没有。只需执行您的查询。如果连接已终止,则您的JDBC驱动程序将重新连接(如果它支持它,并且您在连接字符串中启用了它-大多数不支持它),否则您将得到异常。

如果检查连接是否正常,在实际执行查询之前它可能会掉线,因此通过检查绝对不会获得任何收益。

也就是说,许多连接池通过SELECT 1在分发连接之前执行类似的操作来验证连接。但这仅是执行查询而已,因此您也可以执行业务查询。



 类似资料:
  • 问题内容: 我想为我的用户提供一种有关进度状态的信息。我发现了几个组件,例如: Richfaces状态或IceFaces连接状态 因此,我想在页面上添加类似的内容,尤其是对于ajax请求。最简单的实现方法是什么?我不想使用这些组件之一,而是想编写自己的组件,但我无法想象它需要多少努力:-) 我很感谢你的想法… 问题答案: 标准的JSF实现没有为此提供现成的组件。但是,JSF 2.0规范 在第13.

  • 可确认目前连接的接入点信息或网络的连接状态。

  • 问题内容: 我在客户端上将nodejs与socket.io和angularjs一起使用。我从互联网上获取了angular- socketio示例,并向其中添加了方法。 套接字服务: 控制器: 但是,当我尝试使用此方法断开连接时,出现错误: 而且我不知道在哪里挖…… 问题答案: [更新] 是Angular的内部私有变量,因此您不应该真正依赖于此类事情。伊戈尔在另一个答案中描述了一些处理此问题的建议,

  • 在一个运行在Tomcat 7.0.50下的Spring MVC 4.0.2项目中,我试图使用简单的代理和sockjs stompendpoint来实现Spring Websocket,遵循官方参考。因此,在contextConfigLocation(DistpacherServlet属性)中,我添加了一个值“websocket-config.xml”,它包含: null 在jsp页面中,我将代码

  • 我正在创建一个客户端服务器应用程序。服务器已经设计好,等待从客户端连接。现在在客户机部分中,我希望在应用程序的整个生命周期中保持连接活动,并且只有当主客户机应用程序关闭或关闭或者服务器关闭它时,连接才会关闭。 在处理程序中我有: