Mysql
 sql >> Base de données >  >> RDS >> Mysql

Bonne pratique Consécutive PreparedStatement

Vous n'utilisez pas le même PreparedStatement , la méthode d'usine Connection.prepareStatement vous renvoie une nouvelle instance à chaque fois que vous l'appelez. PreparedStatement.executeQuery fait la même chose avec ResultSet . Vous utilisez simplement les mêmes variables.

Cela signifie que vous perdez des ressources - le premier PreparedStatement et ResultSet - chaque fois que cette méthode est appelée, qui ne sont jamais fermées.

Ma recommandation serait d'utiliser le JdbcTemplate de Spring qui gérera ces ressources de base de données correctement pour vous et vous divisez votre code en deux méthodes.