Java : itérer efficacement sur les ensembles de résultats
En Java, travailler avec des ensembles de résultats de base de données est une tâche courante lors de la récupération de données à partir d'une base de données. Dans cet article, nous explorerons une approche efficace pour parcourir les enregistrements dans un ensemble de résultats et extraire des valeurs spécifiques.
Considérons l'exemple suivant :
String querystring1 = "SELECT rlink_id, COUNT(*)" + "FROM dbo.Locate " + "GROUP BY rlink_id ";
Cette requête récupère le rlink_id unique valeurs ainsi que leurs décomptes respectifs de la table dbo.Locate. En supposant que vous ayez exécuté cette requête et obtenu un objet ResultSet (rs4), l'étape suivante consiste à extraire les valeurs.
Le code d'origine fourni,
String[] show = {rs4.getString(1)}; String[] actuate = {rs4.getString(2)};
récupère et affiche uniquement le premier enregistrer dans le jeu de résultats. Pour parcourir tous les enregistrements, nous pouvons utiliser une boucle while en conjonction avec la méthode rs4.next().
Pour améliorer l'approche, introduisons deux listes, sid et lids, qui stockeront les valeurs de rlink_id et les comptes, respectivement.
List<String> sids = new ArrayList<String>(); List<String> lids = new ArrayList<String>();
Le code modifié devient :
while (rs4.next()) { sids.add(rs4.getString(1)); lids.add(rs4.getString(2)); }
Enfin, nous pouvons convertir les listes en tableaux pour afficher les données comme vous le souhaitez :
String[] show = sids.toArray(sids.size()); String[] actuate = lids.toArray(lids.size());
Cette approche améliorée parcourt efficacement l'ensemble des résultats, extrayant les valeurs souhaitées et les stockant dans des listes séparées. Ces listes peuvent ensuite être facilement converties en tableaux pour un traitement ou un affichage ultérieur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!