J'utilise javax.sql.rowset.JdbcRowSet
et com.sun.rowset.JdbcRowSetImpl
pour manipuler des données. Tout fonctionne bien, mais je reçois un avertissement que je pourrais avoir une fuite de ressources.JDBC RowSets utilisant singleton Connexion
En outre, j'utilise singleton Connexion dans le constructeur JdbcRowSet qui est toujours ouvert, mais quand j'utilise JdbcRowSet close()
je ne peux pas l'utiliser dans la méthode suivante.
Voici le code.
public static Connection conn = DBConnection.getInstance()
.getConnection();
(not the exact work, only a sample code)
private static void function1() {
try {
JdbcRowSet myrs = new JdbcRowSetImpl(conn);
myrs.setCommand("SELECT * FROM `table1`");
myrs.execute();
//result iteration
myrs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
private static void function2() {
same as function1 (for example, not really important here)
}
public static void start(){
function1();
function2();
}
Quand il arrive à exécuter dans myrs
function2()
je reçois une erreur:
at com.sun.rowset.JdbcRowSetImpl.execute(Unknown Source)
Tout le monde sait comment le résoudre?
Que se passe-t-il lorsque vous exécutez function1 deux fois? –
@FrankOlschewski La même chose que j'ai exécuté la fonction2. – Ivan