Java 1.6 : ResultSet et Collection
Bonjour.
Actuellement, nous avons des applications (Web mais problématique idem en "non-web") en java 1.4. Nous allons les passer en Java 1.6 et j'aurais voullu connaitre les bonnes pratiques. Je m'explique.
En 1.4 :
Lorsque nous faisons une requete sur une table PERSONNE (par exemple), nous récupérons un ResultSet que nous chargons dans un Vector, ce qui nous fait un Vector de Personne.
Code:
1 2 3 4 5 6 7 8 9 10 11
|
Vector resultat=new Vector();
ResultSet rs = s.executeQuery(requete);
while(rs.next())
{
String mat = rs.getString(1);
...
Personne personne = new Personne(mat,...);
resultat.add(personne);
}
return resultat.elements(); |
Ensuite, pour afficher la liste de résultat dans la JSP, nous utilisons une Enumeration (passées dans un paramètre) et bouclons dessus :
Code:
1 2 3 4 5 6 7
|
Enumeration personnes = (Enumeration) request.getAttribute("personnes");
while (personnes.hasMoreElements())
{
Personne pers = (Personne) personnes.nextElement();
...
} |
En Java 1.6, j'ai cru lire qu'il fallait mieux éviter d'utiliser les Enumeration, et utiliser les Iterator (pour utiliser la nouvelle boucle for)
L'idéal est-il de mettre le ResultSet dans une ArrayList, puis d'utiliser un Iterator à a place de l'Enumeration?
ou de continuer à utiliser des Vector (ou d'autres types List, LinkedList...)?
Ou utiliser des ListIterator au lieu d'Iterator?
Merci d'avance