Връзката с базата данни трябва да бъде отворена само когато е необходима и затворена след извършване на цялата необходима работа с нея. Примерен код:
-
Преди Java 7:
Connection con = null; try { con = ... //retrieve the database connection //do your work... } catch (SQLException e) { //handle the exception } finally { try { if (con != null) { con.close(); } } catch (SQLException shouldNotHandleMe) { //... } }
-
Java 7:
try (Connection con = ...) { } catch (SQLException e) { } //no need to call Connection#close since now Connection interface extends Autocloseable
Но тъй като ръчното отваряне на връзка с база данни е твърде скъпо, силно се препоръчва да използвате пул за връзки към база данни
, представен в Java с DataSource
интерфейс. Това ще се справи с физическите връзки към базата данни вместо вас и когато затворите го (т.е. извикване на Connection#close
), физическата връзка с базата данни просто ще бъде в режим SLEEP и все още ще бъде отворена.
Свързани В/О:
Някои инструменти за обработка на обединяване на връзки към базата данни: