Garder un classement de données

Signaler
Messages postés
3
Date d'inscription
mardi 18 mars 2003
Statut
Membre
Dernière intervention
18 mars 2003
-
Messages postés
3
Date d'inscription
mardi 18 mars 2003
Statut
Membre
Dernière intervention
18 mars 2003
-
Bonjour,

Je requete une table avec un "order by" :

select id, nom from maTable order by nom;

Je veux stocker ces "nom" avec leur "id" correspondant dans l'ordre que l'"order by" ma donné cad par ordre alpha. des noms.

J'ai utilisé une table de Hashage (Je bosse en JAVA) mais il semble que cet objet ne restitue pas les données dans l'ordre dans lequel on les rentre !

Existe il un autre objet plus approprié ou une solution avec les tables de Hashage ?

Petite précision : j'utilise des tags Struts <logic:iterate> pour boucler sur ma table de Hashage

Merci d'avance.

5 réponses

Messages postés
890
Date d'inscription
lundi 8 avril 2002
Statut
Membre
Dernière intervention
29 juillet 2004
12
salut,
effectivement la hashtable ne garde pas l'ordre !!
passes par un vector ou un arraylist
Duss
Messages postés
3
Date d'inscription
mardi 18 mars 2003
Statut
Membre
Dernière intervention
18 mars 2003

Le probleme c'est que avec ArrayList (ou Vector) je stocke mes "nom" mais pas mes "id" , je perds la correspondance entre les deux.

Je ne peux plus utiliser de correspondance clé/valeur comme dans les Hashtables

ArrayList possède un index mais je ne peut pas l'utiliser pour stocker mes "id"
Messages postés
890
Date d'inscription
lundi 8 avril 2002
Statut
Membre
Dernière intervention
29 juillet 2004
12
ben tu ruses,
soit tu concatenes en mettant un caractere separateur du style § et apres quand tu les recuperes tu fais un split dessus, soit tu fais des HashMap par exemple avec une entree id et une entree valeur que tu met dans ton vector ;)
Duss
Messages postés
113
Date d'inscription
lundi 24 février 2003
Statut
Membre
Dernière intervention
5 janvier 2004

Ou tu crées une classe avec un champs id et un autre nom.
Puis tu utilise un vector sur des éléments de cette classe.

A bientôt,
P-A
Messages postés
3
Date d'inscription
mardi 18 mars 2003
Statut
Membre
Dernière intervention
18 mars 2003

J'ai utilisé un Bean contenant mes deux champs que j'ai passé dans un ArrayList.

Je passe mon arrayList à mon <html:iterate>

..et ça marche Hiiiii HA !

Merci pour vos conseils dont je me suis inspiré pour que ca colle à mon cas.