Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Fortlaufende vorbereitete Erklärung bewährte Verfahren

Sie verwenden nicht dasselbe PreparedStatement , die Factory-Methode Connection.prepareStatement gibt Ihnen bei jedem Aufruf eine neue Instanz zurück. PreparedStatement.executeQuery macht dasselbe mit ResultSet . Sie verwenden nur dieselben Variablen.

Das bedeutet, dass Sie Ressourcen verlieren – das erste PreparedStatement und ResultSet - jedes Mal, wenn diese Methode aufgerufen wird, die niemals geschlossen wird.

Meine Empfehlung wäre, Springs JdbcTemplate zu verwenden die diese Datenbank-Ressourcen korrekt für Sie verarbeitet und Sie Ihren Code in zwei Methoden aufteilen.