質問
Java 1.5のMyBatis/Ibatisを使用して、テーブル内の列のリストを取得する必要があります。
解決
それは典型的な要件ではありません(IBATISまたはDBスキーマを知っているものを使用してアプリケーションの99.99%)。 IbatisはSQLマッパーです。SQLクエリを自分で書く必要があります。また、テーブル内の列の数を提供する標準のSQLクエリ(AFAIK)はありません。
2つのアプローチしか提案できません。
カタログテーブルから選択するSQLクエリを作成します。それはあなたのDBメタデータを知る通常の方法です。しかし、それはあなたの特定のデータベースエンジンに依存します。そして、それはイバティスとは関係ありません。
Quick and Dirty:アドホッククエリを作成します
SELECT * FROM MYTABLE LIMIT 1
(DBアナログの制限を交換してください)、ハッシュマップを介してイバティスでそれをマッピングし、DAOでキーの数をカウントします。
他のヒント
MyBatisの場合:結果マップの代わりにresultTypeを使用する必要があります。 resultTypeは、コレクションのサイズを知ることで、ノーを取得できることを知ることにより、収集データタイプを返す必要があります。ハッシュマップを使用している場合は、列以上の列などが終了します。キーで列名も取得できます。
所属していません StackOverflow