数据库连接应该一直保持打开状态还是仅在需要时打开?
我有一个bukkit插件(minecraft),需要连接到数据库。
数据库连接应该一直保持打开状态,还是在需要时打开和关闭?
回答:
数据库连接仅在需要时才打开,并在完成所有必要的工作后关闭。代码示例:
在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
但是由于手动打开数据库连接太昂贵,因此强烈建议使用连接池" title="数据库连接池">数据库连接池。这将为您处理物理数据库连接,当您
关闭 物理数据库连接(即调用Connection#close
)时,物理数据库连接将仅处于SLEEP模式并仍处于打开状态。
相关问答:
- Java连接池
一些用于处理数据库连接池的工具:
- 骨CP
- c3po
- Apache Commons DBCP
- 光ikaCP
以上是 数据库连接应该一直保持打开状态还是仅在需要时打开? 的全部内容, 来源链接: utcz.com/qa/434732.html