comment obtenir des métadonnées de colonne dans mybatis
Question
Je dois obtenir la liste des colonnes dans un tableau à l'aide mybatis / Ibatis en Java 1.5.
La solution
Ce n'est pas une exigence typique (99,99% des applications utilisant iBatis ou quel que soit le schéma ORM connaît DB). iBatis est un mappeur SQL, vous devez écrire la requête SQL vous-même. Et il n'y a aucune requête SQL standard (AFAIK) qui vous donne le nombre de colonnes dans un tableau.
Je ne peux proposer deux approches:
-
Faire une sélection de requête SQL à partir des tables de catalogue. C'est la façon normale de connaître à propos de vos métadonnées DB. Mais cela dépend de votre moteur de base de données particulière. Et ce n'est pas lié à iBatis.
-
rapide et sale: faire une requêtes ad-hoc
<. / li>SELECT * FROM MYTABLE LIMIT 1
(remplacer LIMIT pour votre analogique DB), la carte que iBatis par un HashMap, et dans votre OAC il suffit de compter le nombre de touches
Autres conseils
Pour mybatis: Vous devez utiliser resultType au lieu de resultmap. resultType doit être de retour collection type de données, en connaissant la taille de la collection, vous pouvez obtenir pas. des colonnes et plus sur si vous allez avec HashMap vous pouvez obtenir les noms de colonnes trop dans les clés.