首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JDBC连接尝试使用资源

JDBC连接尝试使用资源
EN

Stack Overflow用户
提问于 2020-09-30 18:58:48
回答 1查看 103关注 0票数 3

我对Java编程很陌生,对使用资源共享代码有疑问。

代码语言:javascript
复制
String statement= "<statement>";
DataSource ds = createDSConnection();
if (ds == null) return;

try (PreparedStatement prepare = ds.getConnection().prepareStatement(statement)) {
    // statement values
    prepare.execute();
} catch (Exception e) {
}

这将同时关闭PrepareStatement和db.connection(),还是只关闭PreparedStatement?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-01 08:51:31

如图所示,您的代码将只关闭准备好的语句,而泄漏连接。如果要同时关闭这两种方法,则需要在资源块中每个资源使用一条语句:

代码语言:javascript
复制
try (Connection connection = ds.getConnection();
     PreparedStatement prepare = connection.prepareStatement(statement)) {
    // your code here
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64144096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档