小编典典

jdbc中管理丢失连接的标准方法是什么?

java

我的应用程序有时可能会失去与MySQL数据库的连接。我认为,好的解决方案是安排一些计时器,以便在一段时间后尝试重新检查。可以做得更好吗?可能是尝试连接到数据库的单独线程?还是存在标准做法?谢谢。


阅读 211

收藏
2020-11-23

共1个答案

小编典典

JDBC是开始构建Java数据库应用程序的好方法,但是管理对象映射和连接/事务可以非常迅速地导致大量样板工作和逻辑重写,许多程序员已经多次编写了该逻辑。

除非您有高吞吐量的应用程序,否则应该正常地断开/关闭连接,在这种情况下,您可能会保持几个连接处于活动状态(这称为连接池)。

基本上有3种“高级”方法来维护有效的连接和事务:

1)最简单的解决方案是检查何时重新使用连接以确保其有效,或者每次都重新打开它。

2)一个更复杂的解决方案是使用连接池机制,例如apache
http://commons.apache.org/dbcp/ dbcp库。

3)最后,在我看来, 最可维护的解决方案是使用ibatis / hibernate之类的JDBC框架该框架
将为您提供一个简单的声明式接口来管理对象关系映射/事务/数据库状态,同时透明地维护您的连接逻辑。

还:如果不是您要使用对象关系映射,则可以使用apache之类的框架(例如DBUtils)来管理查询和连接,而不会影响繁重的数据映射。

2020-11-23