OVH Cloud OVH Cloud

interet de cnx.isClosed()

2 réponses
Avatar
Gabriel
Bonjour,

j'ai une question sur un objet Connexion :
Soit le bloc de code suivant :
try {
// On a fini, on rend la connexion.
if (cnx.isClosed() == false){
cnx.close();
cnx = null;
}

} catch (SQLException e) {
outils.Utilitaires.messageDebug("Exception dans afficher :
" + e.getMessage());

}

cnx.isClosed() lève une exception alors que je veux justement ne pas
lever l'exception "connexion already closed", raison pour laquelle je
teste avant.

Est-ce qqun peut m'expliquer ?
Remarque : j'utilise DBPool et il plante souvent dans eclipse qui passe
alors en mode Debug. Qqun a-t-il un retour d'expérience sur ce pool de
cnx ou qque chose de mieux à me conseiller ?

merci d'avance !

2 réponses

Avatar
Patrick Gras
"Gabriel" wrote in message
news:cgkm22$qce$
Bonjour,

j'ai une question sur un objet Connexion :
Soit le bloc de code suivant :
try {
// On a fini, on rend la connexion.
if (cnx.isClosed() == false){
cnx.close();
cnx = null;
}

} catch (SQLException e) {
outils.Utilitaires.messageDebug("Exception dans afficher :
" + e.getMessage());

}

cnx.isClosed() lève une exception alors que je veux justement ne pas
lever l'exception "connexion already closed", raison pour laquelle je
teste avant.

Est-ce qqun peut m'expliquer ?
Remarque : j'utilise DBPool et il plante souvent dans eclipse qui passe
alors en mode Debug. Qqun a-t-il un retour d'expérience sur ce pool de
cnx ou qque chose de mieux à me conseiller ?

merci d'avance !


Hello,

quelle est l'exception ?

Il est plus habituel de faire une connection DB de la façon suivante (pour
être sûr qu'on la ferme correctement) :

try {
cnx = getConnection()
cnx.doSomething()
} catch (SQLException e)
{
handleException(e);
}
finally
{
try {
if (cnx != null)
{
cnx.close(); }
catch (Exception ex) { logException(ex);}
}

-Patrick

Avatar
Gabriel
Patrick Gras wrote:
"Gabriel" wrote in message
news:cgkm22$qce$

Bonjour,

j'ai une question sur un objet Connexion :
Soit le bloc de code suivant :
try {
// On a fini, on rend la connexion.
if (cnx.isClosed() == false){
cnx.close();
cnx = null;
}

} catch (SQLException e) {
outils.Utilitaires.messageDebug("Exception dans afficher :
" + e.getMessage());

}

cnx.isClosed() lève une exception alors que je veux justement ne pas
lever l'exception "connexion already closed", raison pour laquelle je
teste avant.

Est-ce qqun peut m'expliquer ?
Remarque : j'utilise DBPool et il plante souvent dans eclipse qui passe
alors en mode Debug. Qqun a-t-il un retour d'expérience sur ce pool de
cnx ou qque chose de mieux à me conseiller ?

merci d'avance !



Hello,

quelle est l'exception ?

Il est plus habituel de faire une connection DB de la façon suivante (pour
être sûr qu'on la ferme correctement) :

try {
cnx = getConnection()
cnx.doSomething()
} catch (SQLException e)
{
handleException(e);
}
finally
{
try {
if (cnx != null)
{
cnx.close(); }
catch (Exception ex) { logException(ex);}
}

-Patrick




oui, certes, je suis d'accord mais ca ne répond pas vraiment à ma

question :)