Kết nối cơ sở dữ liệu chỉ được mở khi cần thiết và đóng lại sau khi thực hiện tất cả các công việc cần thiết với nó. Mẫu mã:
-
Trước 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
Nhưng vì việc mở kết nối cơ sở dữ liệu theo cách thủ công quá tốn kém, bạn nên sử dụng nhóm kết nối cơ sở dữ liệu
, được trình bày bằng Java với DataSource
giao diện. Điều này sẽ xử lý các kết nối cơ sở dữ liệu vật lý cho bạn và khi bạn đóng nó (tức là đang gọi Connection#close
), kết nối cơ sở dữ liệu vật lý sẽ chỉ ở chế độ SLEEP và vẫn đang mở.
Hỏi / Đáp liên quan:
Một số công cụ để xử lý gộp kết nối cơ sở dữ liệu: