【发布时间】:2017-02-04 13:48:53
【问题描述】:
是否必须将内部 try-with-resources 或其中一个 try-with-resources 中的所有内容都自动关闭?
try (BasicDataSource ds = BasicDataSourceFactory.createDataSource(dsProperties)) {
// still necessary for Connection to close if inside
// try-with-resources?
try (Connection conn = ds.getConnection()) {
String sql = "SELECT * FROM users";
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
try (ResultSet rs = stmt.executeQuery()) {
while (rs.next()) {
System.out.println(rs.getString("email"));
System.out.println(rs.getString("password"));
}
}
}
}
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
【问题讨论】:
-
为什么你使用很多
try-with-resources,只使用一个并使用;放置多个语句。它会负责关闭所有。 -
谢谢@jack jay,这正是我想知道的
标签: java datasource try-with-resources