IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

[ ORACLE ][ STRUTS ] fermer le ResultSet et le Statement


Sujet :

JDBC Java

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 105
    Points : 107
    Points
    107
    Par défaut [ ORACLE ][ STRUTS ] fermer le ResultSet et le Statement
    salut,

    J'effectue des requete SQL sous mon appli Struts
    avec des Statement et des ResultSet

    a la fin de ma méthode j'ai une close finally pour fermer mon resultSet et mon Statement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    finally{
       if(r1!=null)
           try{
                 System.out.println("log r1= " + r1); 
                 r1.close(); 
                 System.out.println("log r1 = " + r1);
            }catch(SQLException uncatched){}
     
      if(s1!=null)try{s1.close();}catch(SQLException uncatched){}
     
    }
    J'ai fait un system.out.println pour afficher mon resultSet avant et apres le close et j'obtiens ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    log r1 = oracle.jdbc.driver.OracleResultSetImpl@1277ffa  //avant le close
    log r1 = oracle.jdbc.driver.OracleResultSetImpl@1277ffa  //apres le close
    est ce normal que le r1 soit toujours le meme apres le close? il doit pas etre a null ou un truc dans le genre, car ca voudrait qu'en fait la mon r1 est toujours ouvert...
    "Plus on fait de conneries, moins on en aura à faire...."

  2. #2
    Membre averti
    Avatar de knotty
    Inscrit en
    Mars 2002
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 126
    Points : 391
    Points
    391
    Par défaut
    est ce normal que le r1 soit toujours le meme apres le close?
    oui, c'est une reference

    il doit pas etre a null ou un truc dans le genre
    non, pour mettre un objet a null -> o=null;

    tu confonds 2 choses,
    1) faire un resultset.close, ca parle a la DB et lui dit de fermer le curseur.
    2) faire un rs = null, ca te debarasse d'une reference, et dit au garbage coll. de nettoyer l'espace memoire. Ca laisse eventuellement les connections ouvertes.

    Donc, comme tu fais, c'est bien.

    Bon courage
    Christophe Ludet
    Testez vos connaissances Java - http://knotty.developpez.com
    Donner des ailes a votre application (J2EE patterns) - http://knotty.developpez.com/j2ee

  3. #3
    Membre régulier
    Inscrit en
    Décembre 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 105
    Points : 107
    Points
    107
    Par défaut
    J'suis pas obligé de mettre
    r = null
    et
    s = null alors?

    ou alors c'est plus propre...

    = )
    "Plus on fait de conneries, moins on en aura à faire...."

  4. #4
    Membre régulier
    Inscrit en
    Décembre 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 105
    Points : 107
    Points
    107
    Par défaut
    Comment etre sur a 100% donc que j'ai correctement fermer mon ResultSet et mon Statement alors?
    "Plus on fait de conneries, moins on en aura à faire...."

  5. #5
    Membre averti
    Avatar de knotty
    Inscrit en
    Mars 2002
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 126
    Points : 391
    Points
    391
    Par défaut
    si close() ne jette pas une exception, tu peux en conclure que c'est reussi.
    Christophe Ludet
    Testez vos connaissances Java - http://knotty.developpez.com
    Donner des ailes a votre application (J2EE patterns) - http://knotty.developpez.com/j2ee

  6. #6
    Membre régulier
    Inscrit en
    Décembre 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 105
    Points : 107
    Points
    107
    Par défaut
    oki merci...
    = )
    "Plus on fait de conneries, moins on en aura à faire...."

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ ORACLE ][ STRUTS ] [ JAVA ] maximum open cursor
    Par LoulouFifi dans le forum Struts 1
    Réponses: 21
    Dernier message: 30/03/2011, 11h52
  2. [Struts] [Oracle] Datasource et Servlet indispo
    Par babylone7 dans le forum Servlets/JSP
    Réponses: 14
    Dernier message: 01/01/2009, 20h16
  3. Réponses: 42
    Dernier message: 18/04/2008, 14h44
  4. [Struts] Fermer un Pop up à la suite d'une action
    Par Sniper37 dans le forum Struts 1
    Réponses: 2
    Dernier message: 10/03/2005, 13h58
  5. [Struts][Oracle]Upload fichier word dans une base
    Par Maximil ian dans le forum Struts 1
    Réponses: 7
    Dernier message: 10/02/2004, 15h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo