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 :

Comment executer plusieurs requêtes avec la même connexion


Sujet :

JDBC Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Août 2006
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 568
    Points : 167
    Points
    167
    Par défaut Comment executer plusieurs requêtes avec la même connexion
    Bonjour,
    j'arrive à executer une seule requête avec la même connexion, mais quand j'essai d'executer deux par exemple j'obtiens l'arreur suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Erreur SQL : java.sql.SQLException: Operation not allowed after ResultSet closedErreur SQL : java.sql.SQLException: Operation not allowed after ResultSet closed
    pourtant je ferme pa la connexion!voici mes deux classes concernées
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    /*
     * Mappin2ODM.java
     *
     * Created on 10 mars 2008, 15:12
     *
     * To change this template, choose Tools | Template Manager
     * and open the template in the editor.
     */
     
    package ehr4research2;
     
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import org.jdom.*;
     
    /**
     *
     * @author naji2
     */
    public class Mappin2ODM {
     
        /** Creates a new instance of Mappin2ODM */
        public Mappin2ODM()
        {
        }
     
     
         public  Document mappin2ODM()
         {
     
     
             //arguments pour la connexion à la base de test mysql
             String urlDB = "jdbc:mysql://localhost:3306/terminologydb";
             String login = "naji";
             String pass = "pass";
             String querytest = "SELECT * FROM WSTY";
             String querytest1 = "SELECT * FROM CIM10";
     
             ////arguments pour la connexion à la copie de l base DxCare (Oracle)
     
             //etablir la connexion 
             DbConnection dxCare = new DbConnection(); 
             Statement statement = dxCare.DbConnection(urlDB,login,pass);
     
             //lancement de requête  
             ResultSet resultset =  dxCare.DbQuery(statement,querytest);
             ResultSet resultset1 =  dxCare.DbQuery(statement,querytest1);
     
     
              OdmSchéma xmlSchéma = new OdmSchéma();
     
              //Nous allons commencer notre arborescence en créant la racine XML
               //qui sera ici "personnes".
               Element racine = new Element("ODM");
     
               //On crée un nouveau Document JDOM basé sur la racine que l'on vient de créer
               org.jdom.Document document = new Document(racine);
     
              //On crée des nouveau elements Elements et on les ajoute en temps qu'Elements de racine
              Element etudiant = xmlSchéma.ajoutElement(racine,"etudiant");
              Element professeur = xmlSchéma.ajoutElement(racine,"professeur");
     
              //On crée des nouveaux Attributs et on les ajoute 
              Attribute classe = xmlSchéma.ajoutAtribut(etudiant,"classe","P2");
     
              //On crée des nouveaux Elements, on leurs assigne du texte et on les ajoute en temps qu'Elements
              try {
                  while(resultset.next())
                  {
                      Element nom = xmlSchéma.ajoutElement(etudiant,"nom",resultset.getString(1));
                      Element prenom = xmlSchéma.ajoutElement(etudiant,"prenom",resultset.getString(2));
     
                    //System.out.println("TUI:" + resultset.getString(1) + " STY:" + resultset.getString(2) + " GROUPE:" + resultset.getString(3));  
                  }
              }
              catch(SQLException sqle) {
                    System.err.print("Erreur SQL : " + sqle);
              }
     
              try {
                  while(resultset1.next())
                  {
                      Element nom1 = xmlSchéma.ajoutElement(professeur,"nom1",resultset.getString(1));
                      Element prenom1 = xmlSchéma.ajoutElement(professeur,"prenom1",resultset.getString(2));
     
                    //System.out.println("TUI:" + resultset.getString(1) + " STY:" + resultset.getString(2) + " GROUPE:" + resultset.getString(3));  
                  }
              }
              catch(SQLException sqle) {
                    System.err.print("Erreur SQL : " + sqle);
              }
     
              //Element nom = xmlSchéma.ajoutElement(etudiant,"nom","testNom");
     
              //Les deux méthodes qui suivent permette d'afficher et d'enregistrer le outPutFile'
              //xmlSchéma.affiche(document);
              //xmlSchéma.enregistre(document,file);
     
              return document;
     
     
          }
     
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    /*
     * DbConnection.java
     *
     * Created on 10 mars 2008, 02:06
     *
     * To change this template, choose Tools | Template Manager
     * and open the template in the editor.
     */
     
    package ehr4research2;
     
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
     
    /**
     *
     * @author naji2
     */
    public class DbConnection {
     
        //methode de connexion à n'importe quelle base, les paramatres sont fournis comme arguments dans la classe OdmSchéma
        public Statement DbConnection(String urlDB,String login ,String pass)
        {   Statement statement = null;
            try 
            {   // Chargement du pilote JDBC
                Class.forName("com.mysql.jdbc.Driver");
                // Connexion
                Connection con = DriverManager.getConnection(urlDB,login,pass);
                // Création d'une instruction
                statement = con.createStatement(); 
            }
            catch( ClassNotFoundException e) 
            {   System.err.println("Erreur lors du chargement du pilote : " + e);
            }
            catch(SQLException sqle) 
             {  System.err.print("Erreur SQL : " + sqle);
             }
            return statement;
        }
     
     
        //methode d'execution des requêtes, retourne un ResultSet
         public ResultSet DbQuery(Statement statement,String query)
         {   ResultSet resultset = null;  
             try 
             {  resultset = statement.executeQuery(query);
     
             }
             catch(SQLException sqle) 
             {  System.err.print("Erreur SQL : " + sqle);
             }
             return resultset;
         }
     
        // Traitement des résultats
        /* while(resultset.next()) {
        //System.out.println("TUI:" + resultset.getString(1) + " STY:" + resultset.getString(2) + " GROUPE:" + resultset.getString(3));
     
        }*/
        // fermeture de la connexion
         //con.close();
    }
    Je vous remercie d'avance pour votre aide

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 442
    Points : 540
    Points
    540
    Par défaut
    Tu utilises deux ResultSet basés sur le même Statement .

    Il ne peut y en avoir qu'un seul par Statement. Du coup quand tu crées le deuxième tu fermes implicitement le premier.

    Tu mélanges du SQL et du JDom, ..., tu fermes pas tes ResultSet et ta Connection...

    Ce que je te conseille de faire pour faire propre :

    1) Créer une classe Personne :

    Personne
    + nom
    + prenom

    2) Créer Etudiant extends Personne, Professeur extends Personne

    3) Exécuter la première requête et remplir une Collection<Etudiant>

    - Ouverture de Connection
    - Création du Statement
    - Exécution de la requête
    - Parcours du ResultSet
    - Alimentation de la Collection<Etudiant>
    - Fermeture du ResultSet
    - Fermeture du Statement

    4) Exécuter la deuxième requête et remplir une Collection<Professeur>

    - Création du Statement
    - Exécution de la requête
    - Parcours du ResultSet
    - Alimentation de la Collection<Professeur>
    - Fermeture du ResultSet
    - Fermeture du Statement
    - Fermeture de la Connection

    5) Alimenter l'arbre JDom dans une classe à part :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public void genererDom(
        Collection<Etudiant> etudiants,
        Collection<Professeur> professeurs) { ... }

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Août 2006
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 568
    Points : 167
    Points
    167
    Par défaut
    merci beaucoup
    Citation Envoyé par Duc Lebowski Voir le message
    Tu mélanges du SQL et du JDom, ..., tu fermes pas tes ResultSet et ta Connection...
    pourquoi; dois-je pas mélanger les deux?.
    En fait c'est juste un schéma xml de test, le vrai est beaucoup plus compliqué et necessite des traitements de données.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    <?xml version="1.0" encoding="UTF-8"?>
    <ODM xmlns="http://www.cdisc.org/ns/odm/v1.2" FileType="Snapshot" Granularity="All" FileOID="Export.629472970559578368" CreationDateTime="2007-12-19T16:22:21+01:00" ODMVersion="1.2">
       <Study OID="SPONSOR.Trial.2007">
          <GlobalVariables>
             <StudyName>Test Trial</StudyName>
             <StudyDescription>Implantation of Stents</StudyDescription>
             <ProtocolName>Trial Protocol</ProtocolName>
          </GlobalVariables>
          <BasicDefinitions>
             <MeasurementUnit OID="mu.kg" Name="kilogram">
                <Symbol>
                   <TranslatedText xml:lang="de">kg</TranslatedText>
                </Symbol>
             </MeasurementUnit>
             <MeasurementUnit OID="mu.cm" Name="centimeter">
                <Symbol>
                   <TranslatedText xml:lang="de">cm</TranslatedText>
                </Symbol>
             </MeasurementUnit>
          </BasicDefinitions>
          <MetaDataVersion OID="MDV.0.1" Name="Version 0.1">
             <Protocol>
                <StudyEventRef StudyEventOID="e.BASELINE" OrderNumber="1" Mandatory="Yes"/>
                <StudyEventRef StudyEventOID="e.FOLLOWUP" OrderNumber="2" Mandatory="Yes"/>
             </Protocol>
             <StudyEventDef OID="e.BASELINE" Name="Baseline" Repeating="No" Type="Unscheduled">
                <FormRef FormOID="f.base" OrderNumber="2" Mandatory="Yes"/>
                <FormRef FormOID="f.LAB" OrderNumber="4" Mandatory="Yes"/>
             </StudyEventDef>
             <StudyEventDef OID="e.FOLLOWUP" Name="Follow-Up" Repeating="Yes" Type="Unscheduled">
                <FormRef FormOID="f.FUSTATUS" OrderNumber="1" Mandatory="Yes"/>
             </StudyEventDef>
             <FormDef OID="f.base" Name="Base data" Repeating="No">
                <ItemGroupRef ItemGroupOID="ig.DEMOGRAPHICS" OrderNumber="3" Mandatory="Yes"/>
                <ItemGroupRef ItemGroupOID="ig.VITALSIGNS" OrderNumber="5" Mandatory="Yes"/>
             </FormDef>
             <FormDef OID="f.FUSTATUS" Name="Follow-up Status" Repeating="No">
                <ItemGroupRef ItemGroupOID="ig.FUSTATUS" OrderNumber="1" Mandatory="Yes"/>
             </FormDef>
             <FormDef OID="f.LAB" Name="Laboratory" Repeating="No">
                <ItemGroupRef ItemGroupOID="ig.LABBASLINE" OrderNumber="3" Mandatory="Yes"/>
             </FormDef>
             <ItemGroupDef OID="ig.VITALSIGNS" Name="Vital Signs" Repeating="No" SASDatasetName="VS">
                <ItemRef ItemOID="i.VS.HEIGHT" OrderNumber="1" Mandatory="No"/>
                <ItemRef ItemOID="i.VS.WEIGHT" OrderNumber="2" Mandatory="No"/>
                <ItemRef ItemOID="i.VS.BMI" OrderNumber="3" Mandatory="No"/>
             </ItemGroupDef>
             <ItemGroupDef OID="ig.FUSTATUS" Name="Follow-up Status" Repeating="No" SASDatasetName="GEN">
                <ItemRef ItemOID="i.FUDATE" OrderNumber="1" Mandatory="Yes"/>
                <ItemRef ItemOID="i.STATUSPATFU" OrderNumber="2" Mandatory="Yes"/>
             </ItemGroupDef>
             <ItemGroupDef OID="ig.LABBASLINE" Name="Lab baseline data" Repeating="No" SASDatasetName="LAB">
                <ItemRef ItemOID="i.LB.HGB" OrderNumber="2" Mandatory="No"/>
                <ItemRef ItemOID="i.LB.HBA1C" OrderNumber="3" Mandatory="No"/>
             </ItemGroupDef>
             <ItemGroupDef OID="ig.DEMOGRAPHICS" Name="Demographics" Repeating="No" SASDatasetName="DM">
                <ItemRef ItemOID="i.DM.INITIALS" OrderNumber="2" Mandatory="Yes"/>
                <ItemRef ItemOID="i.VISITDATE" OrderNumber="1" Mandatory="Yes"/>
             </ItemGroupDef>
             <ItemDef OID="i.VS.HEIGHT" Name="Height" DataType="integer" Length="3" SASFieldName="HEIGHT">
                <Question>
                   <TranslatedText xml:lang="de">Größe</TranslatedText>
                   <TranslatedText xml:lang="en">Height</TranslatedText>
                </Question>
                <MeasurementUnitRef MeasurementUnitOID="mu.cm"/>
             </ItemDef>
             <ItemDef OID="i.VS.WEIGHT" Name="Weight" DataType="integer" Length="3" SASFieldName="WEIGHT">
                <Question>
                   <TranslatedText xml:lang="de">Gewicht</TranslatedText>
                   <TranslatedText xml:lang="en">Weight</TranslatedText>
                </Question>
                <MeasurementUnitRef MeasurementUnitOID="mu.kg"/>
             </ItemDef>
             <ItemDef OID="i.VS.BMI" Name="BodyMassIndex" DataType="float" Length="3" SignificantDigits="1" SASFieldName="BMI">
                <Question>
                   <TranslatedText xml:lang="de">BMI</TranslatedText>
                   <TranslatedText xml:lang="en">BMI</TranslatedText>
                </Question>
             </ItemDef>
             <ItemDef OID="i.VISITDATE" Name="Visit date" DataType="date" Length="10">
                <Question>
                   <TranslatedText xml:lang="de">Datum</TranslatedText>
                   <TranslatedText xml:lang="en">Date</TranslatedText>
                </Question>
             </ItemDef>
    	   <ItemDef OID="i.DM.INITIALS" Name="Initials" DataType="text" Length="2">
                <Question>
                   <TranslatedText xml:lang="de">Initialen</TranslatedText>
                   <TranslatedText xml:lang="en">Initials</TranslatedText>
                </Question>
             </ItemDef>
             <ItemDef OID="i.FUDATE" Name="Follow-up Date" DataType="date" Length="10">
                <Question>
                   <TranslatedText xml:lang="de">Datum der Nachbeobachtung</TranslatedText>
                   <TranslatedText xml:lang="en">Follow-up Date</TranslatedText>
                </Question>
             </ItemDef>
             <ItemDef OID="i.STATUSPATFU" Name="Patient Status" DataType="integer" Length="1">
                <Question>
                   <TranslatedText xml:lang="de">Status des Patienten</TranslatedText>
                </Question>
                <CodeListRef CodeListOID="cl.Status"/>
             </ItemDef>
             <ItemDef OID="i.LB.HGB" Name="Hemoglobin" DataType="float" Length="5">
                <Question>
                   <TranslatedText xml:lang="de">Hemoglobin</TranslatedText>
                   <TranslatedText xml:lang="en">Hemoglobin</TranslatedText>
                   <TranslatedText xml:lang="fr">Â*</TranslatedText>
                </Question>
             </ItemDef>
             <ItemDef OID="i.LB.HBA1C" Name="Hba1C" DataType="float" Length="6">
                <Question>
                   <TranslatedText xml:lang="de">Hba1C</TranslatedText>
                   <TranslatedText xml:lang="en">Hba1C</TranslatedText>
                   <TranslatedText xml:lang="fr">Â*</TranslatedText>
                </Question>
             </ItemDef>         
             <CodeList OID="cl.Status" Name="Status" DataType="integer">
                <CodeListItem CodedValue="1">
                   <Decode>
                      <TranslatedText xml:lang="de">Lebt</TranslatedText>
                   </Decode>
                </CodeListItem>
                <CodeListItem CodedValue="2">
                   <Decode>
                      <TranslatedText xml:lang="de">Kardiale Todesursache</TranslatedText>
                   </Decode>
                </CodeListItem>
                <CodeListItem CodedValue="3">
                   <Decode>
                      <TranslatedText xml:lang="de">Nicht-kardiale Todesursache</TranslatedText>
                   </Decode>
                </CodeListItem>
                <CodeListItem CodedValue="9">
                   <Decode>
                      <TranslatedText xml:lang="de">Unbekannte Todesursache</TranslatedText>
                   </Decode>
                </CodeListItem>
             </CodeList>
          </MetaDataVersion>
       </Study>
       <AdminData StudyOID="SPONSOR.Trial.2007">
          <User OID="User.Admin">
             <LoginName>admin</LoginName>
             <DisplayName>Administrator</DisplayName>
             <LocationRef LocationOID="Center.Admin"/>
          </User>
          <User OID="User.002">
             <LoginName>investigator1</LoginName>
             <DisplayName>Dr. Vestigator 1</DisplayName>
             <LastName>Vestigator</LastName>
             <LocationRef LocationOID="Center.002"/>
          </User>
          <Location OID="Center.Admin" Name="Administration centre" LocationType="Other">
             <MetaDataVersionRef StudyOID="SPONSOR.Trial.2007" MetaDataVersionOID="MDV.0.1" EffectiveDate="1970-01-01"/>
          </Location>
          <Location OID="Center.002" Name="Center 1" LocationType="Site">
             <MetaDataVersionRef StudyOID="SPONSOR.Trial.2007" MetaDataVersionOID="MDV.0.1" EffectiveDate="1970-01-01"/>
          </Location>
       </AdminData>
       <ClinicalData StudyOID="SPONSOR.Trial.2007" MetaDataVersionOID="MDV.0.1">
          <SubjectData SubjectKey="Subject.17">
             <SiteRef LocationOID="Center.002"/>
             <StudyEventData StudyEventOID="e.BASELINE">
                <FormData FormOID="f.base">
                   <ItemGroupData ItemGroupOID="ig.DEMOGRAPHICS">
                      <ItemData ItemOID="i.VISITDATE" Value="2007-12-03"/>
                      <ItemData ItemOID="i.DM.INITIALS" Value="DE"/>
                   </ItemGroupData>
                   <ItemGroupData ItemGroupOID="ig.VITALSIGNS">
                      <ItemData ItemOID="i.VS.HEIGHT" Value="170">
                         <MeasurementUnitRef MeasurementUnitOID="mu.cm"/>
                      </ItemData>
                      <ItemData ItemOID="i.VS.WEIGHT" Value="88">
                         <MeasurementUnitRef MeasurementUnitOID="mu.kg"/>
                      </ItemData>
                      <ItemData ItemOID="i.VS.BMI" Value="30.4"/>
                   </ItemGroupData>
                </FormData>
                <FormData FormOID="f.LAB">
                   <ItemGroupData ItemGroupOID="ig.LABBASLINE">
                      <ItemData ItemOID="i.LB.HGB" Value="100"/>
                      <ItemData ItemOID="i.LB.HBA1C" Value="34"/>
                </ItemGroupData>
                </FormData>
             </StudyEventData>
             <StudyEventData StudyEventOID="e.FOLLOWUP" StudyEventRepeatKey="001">
                <FormData FormOID="f.FUSTATUS">
                   <ItemGroupData ItemGroupOID="ig.FUSTATUS">
                      <ItemData ItemOID="i.FUDATE" Value="2007-12-15"/>
                      <ItemData ItemOID="i.STATUSPATFU" Value="1"/>
                   </ItemGroupData>
                </FormData>
             </StudyEventData>
          </SubjectData>
       </ClinicalData>  
    </ODM>
    Je vais donc essayer soit de créer autant de statment que de requêtes, ce que je pense n'est pas du tout malin, soit de n'executer la première requête qu'après avoir fini de la première.

    Je vous remercie encore

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Août 2006
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 568
    Points : 167
    Points
    167
    Par défaut
    J'ai résolu le problème en rendant les requêtes local, je ne sais pas si c'est pas bien ou pas, en tout cas ça marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    /*
     * Mappin2ODM.java
     *
     * Created on 10 mars 2008, 15:12
     *
     * To change this template, choose Tools | Template Manager
     * and open the template in the editor.
     */
    
    package ehr4research2;
    
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import org.jdom.*;
    
    /**
     *
     * @author naji2
     */
    public class Mappin2ODM {
        
        /** Creates a new instance of Mappin2ODM */
        public Mappin2ODM()
        {
        }
        
        
         public  Document mappin2ODM()
         {           
             //arguments pour la connexion à la base de test mysql
             String urlDB = "jdbc:mysql://localhost:3306/terminologydb";
             String login = "naji";
             String pass = "pass";
             String querytest = "SELECT * FROM WSTY";
             String querytest1 = "SELECT * FROM CIM10";
             
             ////arguments pour la connexion à la copie de l base DxCare (Oracle)
             
             //etablir la connexion 
             DbConnection dxCare = new DbConnection(); 
             Statement statement = dxCare.DbConnection(urlDB,login,pass);
             
             
             //lancement de requête  
             //Statement statement1 = dxCare.DbConnection(urlDB,login,pass);
             //ResultSet resultset1 =  dxCare.DbQuery(statement,querytest1);
             //ResultSet resultset =  dxCare.DbQuery(statement,querytest);
             
              
              OdmSchéma xmlSchéma = new OdmSchéma();
              
              //Nous allons commencer notre arborescence en créant la racine XML
               //qui sera ici "personnes".
               Element racine = new Element("ODM");
    
               //On crée un nouveau Document JDOM basé sur la racine que l'on vient de créer
               org.jdom.Document document = new Document(racine);
               
              //On crée des nouveau elements Elements et on les ajoute en temps qu'Elements de racine
              Element etudiant = xmlSchéma.ajoutElement(racine,"etudiant");
              Element professeur = xmlSchéma.ajoutElement(racine,"professeur");
    
              //On crée des nouveaux Attributs et on les ajoute 
              Attribute classe = xmlSchéma.ajoutAtribut(etudiant,"classe","P2");
    
              //On crée des nouveaux Elements, on leurs assigne du texte et on les ajoute en temps qu'Elements
              try {
                 ResultSet resultset =  dxCare.DbQuery(statement,querytest);              while(resultset.next())
                  {
                      Element nom = xmlSchéma.ajoutElement(etudiant,"nom",resultset.getString(1));
                      Element prenom = xmlSchéma.ajoutElement(etudiant,"prenom",resultset.getString(2));
                      
                    //System.out.println("TUI:" + resultset.getString(1) + " STY:" + resultset.getString(2) + " GROUPE:" + resultset.getString(3));  
                  }
              }
              catch(SQLException sqle) {
                    System.err.print("Erreur SQL : " + sqle);
              }
              
              
              try {
                  ResultSet resultset1 =  dxCare.DbQuery(statement,querytest1);
                  while(resultset1.next())
                  {
                      Element nom1 = xmlSchéma.ajoutElement(professeur,"nom1",resultset1.getString(1));
                      Element prenom1 = xmlSchéma.ajoutElement(professeur,"prenom1",resultset1.getString(2));
                      
                    //System.out.println("TUI:" + resultset.getString(1) + " STY:" + resultset.getString(2) + " GROUPE:" + resultset.getString(3));  
                  }
              }
              catch(SQLException sqle) {
                    System.err.print("Erreur SQL : " + sqle);
              }
              
              //Element nom = xmlSchéma.ajoutElement(etudiant,"nom","testNom");
              
              //Les deux méthodes qui suivent permette d'afficher et d'enregistrer le outPutFile'
              //xmlSchéma.affiche(document);
              //xmlSchéma.enregistre(document,file);
              
              return document;
             
              
          }
        
    }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 442
    Points : 540
    Points
    540
    Par défaut
    Citation Envoyé par Smix007 Voir le message
    pourquoi; dois-je pas mélanger les deux?
    Parce que au bout d'un moment ton code fera 3 km de long, il ne sera ni maintenable ni évolutif. Ca s'appelle coder en ligne et ce n'est pas de l'objet.

    Mais bon si tu veux juste que ça marche et que ça marche, c'est l'essentiel après tout

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Août 2006
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 568
    Points : 167
    Points
    167
    Par défaut
    Tu as raison, d'ailleurs j'ai essayé de séparer un peu les classes donc je ne fais qu'appeler des methodes que j'ai déjà défini dans une classe OdmSchéma, je vais voir ce que je peu faire de plus.
    merci encore

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

Discussions similaires

  1. Exécuter pluiseurs requêtes avec la même connexion JDBC
    Par Xeuch dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 26/05/2014, 14h05
  2. Plusieurs requêtes pour une même connexion
    Par _shuriken_ dans le forum JDBC
    Réponses: 0
    Dernier message: 07/02/2011, 12h19
  3. comment exécuter plusieurs requêtes ensemble avec Pentaho
    Par bfelicien2000 dans le forum Pentaho
    Réponses: 0
    Dernier message: 01/12/2010, 17h31
  4. Mettre à jour plusieurs champs avec la même requête, est-ce possible ?
    Par marchand_de_sable dans le forum Langage SQL
    Réponses: 6
    Dernier message: 13/06/2008, 17h36
  5. [C#][Mysql]Comment utiliser plusieurs dataset sur la même connexion
    Par Invité dans le forum Accès aux données
    Réponses: 3
    Dernier message: 05/12/2006, 09h30

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