Comment extraire toute la ligne comme tableau d'objets avec JDBC
Je dois faire une "requête" de la méthode de ma classe qui permet d'accéder à MySQL thru' JDBC.
Le paramètre d'entrée de la méthode est une plein de commandes SQL (avec des valeurs comprises), donc je ne sais pas les noms de colonnes à extraire.
Certaines colonnes sont des chaînes de caractères, d'autres sont des entiers, etc.
La méthode doit retourner la valeur de type ArrayList<HashMap<String,Object>>
où chaque table de hachage est de 1 ligne, et l'ArrayList contient toutes les lignes de résultat.
Je suis en train de penser à l'aide de ResultSet.getMetaData().getColumnCount()
pour obtenir le nombre de colonnes de récupérer cellule par cellule de la ligne en cours, mais est-ce la seule solution? mieux?
OriginalL'auteur jondinham | 2012-08-06
Vous devez vous connecter pour publier un commentaire.
J'ai l'exemple de code ici, juste au cas où quelqu'un en a besoin. ("Con" dans le code est le standard de connexion JDBC).
OriginalL'auteur jondinham
C'est vraiment hallucinant de voir que Java a un tel manque de base de données utile les outils de manipulation et nécessite, vous pouvez faire votre propre. Loin d'être le plus accessible modèles d'autres langues modernes. Par exemple, pour l'ensemble de la dérision qu'il reçoit, au moins en PHP, vous pouvez faire quelque chose comme résultat.getResults() et d'obtenir une Liste de Cartes où chaque Carte est une ligne, avec les noms des colonnes de clés. C'est tellement simple et pourtant en Java, vous avez besoin de passer du temps personnalisé de l'élaboration de votre propre. Qui signifie qu'il ya un zillion différentes db méthodes d'aide là-bas qui font exactement la même chose, le tout est que Java n'est pas.
OriginalL'auteur Keith Tyler