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

avec Java Discussion :

recuperer le resultat d'une fonction java


Sujet :

avec Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut recuperer le resultat d'une fonction java
    bonjour,
    comment on peut récupérer le résultat(rep) de cette méthode appartir d'une autre classe?

    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
    public boolean isInBase(String id, String mdp)throws RemoteException
    	{
    		boolean rep = false;
    		try {
    			Class.forName("com.mysql.jdbc.Driver");
    			Connection joueur = DriverManager.getConnection("jdbc:mysql://localhost/sudoku", "root", "123456");
    			Statement instruction = joueur.createStatement();
    			ResultSet resultat = instruction.executeQuery("SELECT id, mdp FROM joueur " +
    					"WHERE id = '" +id+ "' and mdp = '" +mdp+ "'");
     
    		} 	
    		catch (SQLException ex) { 
    			System.err.println("Erreur Localisation BD");
    			System.out.println("<-->"+ex.getMessage());
    		}
                   if (resultat.next()){
    	if(resultat.getString(1)!= "" && resultat.getString(2) != "" ){
    	rep = true;
     
    	} 
     
    	} 
     
    else {
     
    	rep = false;
    	}
    		return rep;  
     
    	}
    l'objectif c'est de faire un teste sur le retour de cette méthode(boolean) pour lancer une autre classe si true et rien si false.
    merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Points : 653
    Points
    653
    Par défaut
    Oulahhh, tu débutes en programmation orientée objet.

    Cette méthode n'est pas une méthode static, donc tu dois d'abord instancier la classe dans laquelle elle se trouve. Tu devrais jetter un petit coup d'oeil aux tutoriels java sur dvp.

  3. #3
    Membre expérimenté Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Points : 1 540
    Points
    1 540
    Par défaut
    verbose a raison ...
    Mais pour répondre quand même à ta question (parceque j'ai du temps à tuer) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public class Connect{
         public connect(){}
         public boolean isInBase(String id, String mdp)throws RemoteException{...}
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public class main{
         public static void main(String[] args){
              Connect monConnect = new Connect();
              if(monConnect.isInBase("id","mdp")){
                   System.out.println("tu lance une autre classe");
              }else{
                   System.out.println("rien");
              }
         }
    }
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class main{
         public static void main(String[] args){  
              Connect monConnect = new Connect();
              boolean result = monConnect.isInBase("id","mdp");
              if(result){//si result = true;
                   System.out.println("tu lance une autre classe");
              }else{
                   System.out.println("rien");
              }
         }
    }
    Il était une fois [...] Et ils vécurent heureux et eurent beaucoup d'enfants!

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    merci pour vos réponses, effectivement je débute en programmation objet et j'ai encore les mauvaises habitudes

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    surtout merci a toi Ivelios pour le coup de pouce

    j'ai un autre problème, si j'appelle une autre classe après le test, les deux classe partageant la même ressource(si je ferme l'une, l'autre se ferme automatiquement!!).

    j'ai associé un thread a la classe appelé mais ça ne change rien.

    j'espère que c'est clair...

  6. #6
    Membre expérimenté Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Points : 1 540
    Points
    1 540
    Par défaut
    j'espère que c'est clair...

    si je ferme l'une, l'autre se ferme automatiquement!!
    heu... en C++ tu peux libérer la mémoire manuellement mais en JAVA il y a un ramasse miette automatique. Alors ne ne comprend pas comment tu fait pour fermer un classe .
    Peut tu reformuler ta question STP ou préciser. Merci
    Il était une fois [...] Et ils vécurent heureux et eurent beaucoup d'enfants!

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    je m'explique:

    j'ai trois fichiers(Identification.java, Connexion.java(IHM) et jeux.java(IHM))

    dans Identification.java j'ai la méthode(isInBase()+ données de connexion RMI...); dans Connexion.java j'appelle la méthode isInBase(id, mdp), et si j'ai un return=true, j'appelle jeux.java(IHM).

    quand l'IHM Connexion.java est lancé, je saisie (login, mdp) et si c'est les bon, l'IHM jeux s'ouvre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     if(monConnect.isInBase("id","mdp")){
                   GUIGame monjeux = new  GUIGame();
              }else{
                   System.out.println("rien");
              }
    le probléme c'est qu'une fois le jeux(2éme fenêtre) lancé, quand je ferme la fenêtre de connexion(1ére fenêtre), le jeux se ferme aussi et contrairement!!!!!!

  8. #8
    Membre expérimenté Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Points : 1 540
    Points
    1 540
    Par défaut
    Dans ta première fenetre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public class premiereFenetre enxtends JFrame{
    public premiereFenetre(){
    ...
    this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    ...
    }
    }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
                   GUIGame monjeux = new  GUIGame();
    tu peux directement remplacer par
    Il était une fois [...] Et ils vécurent heureux et eurent beaucoup d'enfants!

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    d'accord je vais voir ça ce soir.

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    cool, ça marche avec DISPOSE_ON_CLOSE a la place de EXIT_ON_CLOSE

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/10/2013, 12h13
  2. comment recuperer le resultat dans une fonction
    Par birame dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 11/06/2007, 12h00
  3. Réponses: 2
    Dernier message: 20/11/2006, 19h21
  4. comment recuperer le resultat d'une commande dos en java?
    Par trunks-tr dans le forum Général Java
    Réponses: 49
    Dernier message: 06/06/2006, 14h25
  5. Réponses: 4
    Dernier message: 18/01/2006, 10h33

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