Probleme JTree - Java - Programmation
Marsh Posté le 23-06-2008 à 17:16:28
Pour te faciliter la tache tu peut découper ton code de la façon suivante:
- une classe pour stocker un utilisateur et ses rôles
- une classe qui charge les données de ta base, et qui construit une liste d'objets (de la classe précédente) en retour
- une dernière classe qui se charge de construire le JTree à partir de la liste précédente
Marsh Posté le 24-06-2008 à 17:12:31
il n'y a pas moyen de faire le tout dans une seule classe avec par exemple une méthode qui crée la racine et une autre que l'on va appeler récursivement et qui créerait le reste de l'arbre?
Marsh Posté le 25-06-2008 à 11:43:16
C'est le but de la 3ème classe dont je t'ai parlé.
Déjà est-ce que tu sait modéliser la relation entre un utilisateur et ses droits ?
Quelle est la tête des données remontées par ta requête ?
Marsh Posté le 25-06-2008 à 17:44:47
bah je sais afficher les droits d'un utilisateur, qu'entends tu par la tete des données?
Marsh Posté le 23-06-2008 à 15:08:38
Bonjour,
je développe actuellement une application qui doit récupérer des données dans une base mysql et afficher le tout sous forme de Jtree avec des checkbox. J'arrive à créer un Jtree et à affecter des données, seulement je dois le faire tant qu'il y a des données dans ma table, donc tant que le ResultSet que j'utilise n'est pas vide.
Le problème c'est que je ne vois pas du tout comment faire la boucle qui me permettra de remplir mon arbre avec les données, voici mon code pour le jtree (création et début de remplissage):
requete = "SELECT U.BNameU,R.AGR_NAMER,R.OBJECTR,R.AUTHR,P.ProfName,P.OBJECTP,P.AUTHP FROM utilisateur U,profiles P,role R WHERE U.BNameU ='TEST' AND P.OBJECTP=R.OBJECTR AND P.AUTHP=R.AUTHR AND U.BNameU=P.BNameP";
rs = stmt.executeQuery(requete);
while (rs.next())
{
root = new DefaultMutableTreeNode(rs.getString("BNameU" ));
BrancheRole = new DefaultMutableTreeNode(rs.getString("AGR_NAMER" ));
BrancheRole.add(new DefaultMutableTreeNode(rs.getString("OBJECTR" )));
BrancheRole.add(new DefaultMutableTreeNode(rs.getString("AUTHR" )));
root.add(BrancheRole);
BrancheProfile = new DefaultMutableTreeNode(rs.getString("ProfName" ));
BrancheProfile.add(new DefaultMutableTreeNode(rs.getString("OBJECTP" )));
BrancheProfile.add(new DefaultMutableTreeNode(rs.getString("AUTHP" )));
root.add(BrancheProfile);
}
DefaultTreeModel model = new DefaultTreeModel(root);
jt.setModel(model);
}
Ici,il y a plusieurs role (AGR_NAME) pour un utilisateur (BNameU) et j'aimerai afficher tous les roles de l'utilisateur de la facon suivante :
User
ROLE1
OBJECT1
AUTH1
OBJECT2
AUTH2
...
ROLE2
OBJECT
AUTH
et ainsi de suite, si quelqu'un voit comment faire...
merci d'avance
Message édité par idris5 le 23-06-2008 à 15:24:25