您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

JDBC结果集和语句必须单独关闭,尽管连接在之后关闭?

JDBC结果集和语句必须单独关闭,尽管连接在之后关闭?

你所做的是完美且非常好的做法。

我说这是一个好的做法的原因……例如,如果由于某种原因你正在使用“原始”类型的数据库池并调用connection.close(),则连接将返回到池中,并且ResultSet/ Statement将永远不会关闭,然后你会遇到许多不同的新问题!

因此,你不能总是指望connection.close()进行清理。

借助try-with-resources语句, Java 1.7使我们的生活更加轻松。

try (Connection connection = dataSource.getConnection();
    Statement statement = connection.createStatement()) {
    try (ResultSet resultSet = statement.executeQuery("some query")) {
        // Do stuff with the result set.
    }
    try (ResultSet resultSet = statement.executeQuery("some query")) {
        // Do more stuff with the second result set.
    }
}

此语法非常简短而优雅。而且connection的确会即使在关闭时,statement不能创建。

其他 2022/1/1 18:21:07 有705人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶