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

java.sql.SQLException :la connexion est fermée [POOL-HikariCP]

La structure de votre code n'est pas claire pour moi. Mais je ne pense pas que vous souhaitiez allouer une connexion dans initComponents() . Vous devriez obtenir une connexion lorsque vous devez exécuter une requête, puis la fermer pour la renvoyer au pool.

Quelque chose comme...

public int validateLogin(String nip) {
   int validation=0;
   String SQL="SELECT * FROM bank.account WHERE No_Account='"+account+"'   
    AND NIP='"+nip+"'";
    try (Connection conn = SQL.getConnection();
         Statement stm = conn.createStatement()) {
       ResultSet rs = stm.executeQuery(SQL);
       ...
    }
    catch (SQLException e) {
       ...
    }

Le "essayer avec des ressources" fermera automatiquement la connexion et la déclaration.

Et où SQL.getConnection() fait quelque chose comme :

public Connection getConnection() throws SQLException {
   return Hikari.getConnection();
}