次のコードでtry-with-resourcesを正しく使用するかどうかは疑問です。Java暗黙のtry-with-resources
try (ResultSet rs = new QueryBuilder(connection, tableName(), getPaths(), searchQuery()).add(constraint).build().executeQuery()) {
while (rs.next()) {
beans.add(createBean(rs));
}
}
引数は重要ではない、唯一重要なことは、次のとおりです。
new QueryBuilder().build();
はPreparedStatement
を返します。
私は完全にrs
が閉鎖されることを理解し、しかしPreparedStatement
も閉鎖され、そうであれば、どのような理由のために? ResultSet
がリソースを試行したり終了したりするために終了したためですか?
私はそれを持っていました(そしてもう一度やります)しかし、私はtwを避けようとしていました異なる宣言。 – skiwi
+1あなたはそれに私を打ち負かしました:-) –
@skiwi私は実際には2つのステートメントをより読みやすく、それ以下に分割しています。 – assylias