Bonjour à tou(te)s,
Je développe une petite appli' sur une création de visiteurs. Je génère un identifiant en récupérant la première lettre de son nom suivi de deux chiffres aléatoires compris entre 0 et 9. Jusque là, rien de difficile. Vient ensuite le test de l'identifiant pour vérifier qu'il n'existe pas déjà.
Pour ce test, j'ai une méthode "existeVisiteur" :
Je l'appel de cette façon là :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 private boolean existeVisiteur(String id){ boolean trouve = false; int i = 0; //listeV récupère tous les visiteurs existants dans la BDD listeV = AccesBDD.getLesVisiteurs(); while(i<listeV.size() || trouve == false){ if(id.equals(listeV.get(i).getId())) trouve = true; i++; } return trouve; }
Lorsque l'identifiant est déjà utilisé, il me retourne bien "Cet identifiant n'est pas disponible", en revanche lorsque celui-ci n'existe pas, je passe dans le catch.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 try { //affectation des données à des variables String id = textFieldId.getText(); if (existeVisiteur(id) == false) afficheMessage("Cet identifiant est disponible"); else afficheMessage("Cet identifiant n'est pas disponible") } catch (Exception e) { afficheMessage("Problème de saisie."); }
La connexion entre mon appli Java et la base MySQL est fait en hibernate. (Je n'ai pas le choix)
Je ne vois pas d'où ça peut venir, si quelqu'un pouvait m'aider
Merci d'avance
Partager