Multi-return dans une méthode?

Résolu
oulanos Messages postés 25 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 10 mai 2010 - 19 juin 2009 à 14:08
oulanos Messages postés 25 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 10 mai 2010 - 22 juin 2009 à 15:06
Bonjour,

En fait je ne sais pas si le titre est "juste" dans le langage Java mais ça explique bien ce que je tente de faire:

Alors voilà en fait j'ai une requête à une bdd grâce à une classe de connexion à celle-ci qui me permet de retourner une Liste (en arraylist) d'une table, mettons Hostname.

Cependant je voudrai aussi pouvoir récupérer le "id" de ce hostname pour ensuite pouvoir m'en servir.

En fait mon code donne à peu près ça:
********************************
            String communaute = SnmpField.getText();
             bdd_cacti_connexion objetConnect2 = new bdd_cacti_connexion();

             List list = objetConnect2.rechercheSnmp(communaute);

                listModel.removeAllElements();
               
                for (Object object : list) {
                    listModel.addElement(object);
                    }
    **************************

public List rechercheSnmp(String communaute) {
        List results = new ArrayList();
     
       
        try {
            String url = "jdbc:odbc:cacti";
            Connection conn = DriverManager.getConnection(url);
            System.out.println("Connection MySQL effectuee\n\n\n");
            Statement statement = conn.createStatement();            ResultSet result statement.executeQuery("SELECT * FROM host WHERE snmp_community'" + communaute + "'");
            int i = 0;
            while (result.next()) {
                String name = result.getString("hostname");
   
                results.add(name);
         
                i++;
            }
   System.out.println("Il y a " + i + " entr es");
            conn.close();
        } catch (SQLException e) {
            System.out.println("erreur ConnexionBase" + e);
        }
        return results;
           

là je lance mon p'tit monde avec une string "communaute" passé en paramètre et après ce qui est retourné est stocké dans une Liste nommée "list" pour le coup..

Voilà en fait je me demande comment faire pour récupérer aussi l'id parce que je fais un return results pour retourner ma liste qui contient les résultats de ma requête.

Je sais qu'on ne peut pas faire de multi return, enfin retourner 2 variables par là... donc je m'interroge sur le pourquoi du comment.

Désolé je suis vraiment nouveau dans le monde de la progra

En essayant de faire un Arraylist[] list.. enfin un "tableau" d'arraylist j'ai pas réussi, donc je me tourne vers vous pour savoir comment faire pour avoir un "tableau" avec cette liste pour avoir une multi-entrée.

Merci par avance et si vous ne comprenez pas ma requête merci de me le préciser et je tenterai d'expliquer plus en détail.

3 réponses

kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
19 juin 2009 à 15:45
Salut,

pourquoi tu ne crées pas tout simplement un objet qui contient ton id et ta liste ? et c'est cet objet que tu renvoies ...
3
tlaloctzin Messages postés 136 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 12 septembre 2013 3
22 juin 2009 à 13:05
Bah sinon c est ptet pas le plus propre mais tu fais un second Array dans lequel tu stocks les ID et apres tu crée un tableau d Objects [][] et tu place tes IDs avec tes autres valeurs , ensuite tu retournes ton tableau....


C'est pas super beu mais ca fonctionneras je pense.

Il vaut mieu être riche et en bonne santé que pauvre et malade .
0
oulanos Messages postés 25 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 10 mai 2010
22 juin 2009 à 15:06
Salut à vous deux et merci pour vos réponses.
Désolé pour le temps de réponse, j'avais pas internet là ou j'étais :D

Je vais essayer les deux façons, bon avec un penchant pour la première qui a l'air plus "propre". Merci en tout cas, je vais tenter tout ça et je dirai si je m'en suis sorti!

bonne journée
0
Rejoignez-nous