Remover boilerplate do código db
Parece que toda vez que eu quero realizar uma consulta do banco de dados, eu tenho que escrever o seguinte:
Connection conn = null;
Statement stmt = null;
ResultSet rset = null;
try {
conn = dataSource.getConnection();
stmt = conn.prepareStatement(sql);
// ...set stmt params
rset = stmt.executeQuery();
while(rset.next()) {
// Do something interesting
}
} finally {
try { if (rset != null) rset.close(); } catch(SQLException e) { }
try { if (stmt != null) stmt.close(); } catch(SQLException e) { }
try { if (conn != null) conn.close(); } catch(SQLException e) { }
}
Esta é realmente a melhor maneira de fazer isso? Existe uma maneira de reduzir pelo menos parte da confusão?
Editado: como alguns dos comentários apontaram, este código não demorou muitoo suficiente.