Как получить столбец метаданные в MyBatis
Вопрос
Мне нужно получить список столбцов в таблице, используя mybatis / ibatis в Java 1.5.
Решение
Это не типичное требование (99,99% приложений, использующих IBATIS или все, что ORM знает схему БД). IBATIS - это SQL Mapper, вы должны написать SQL-запрос самостоятельно. И нет стандартного SQL-запроса (AFAIK), который дает вам количество столбцов в таблице.
Я могу только предложить два подхода:
Сделайте запрос SQL, выбрав из таблиц каталога. Это нормальный способ узнать о ваших метаданных БД. Но это зависит от вашего конкретного двигателя базы данных. И это не связано с ibatis.
Быстрый и грязный: сделать рекламный запрос
SELECT * FROM MYTABLE LIMIT 1
(Замените предел для аналога DB), на карте, что в iBATIS через Hashmap, а в вашем DAO просто подсчитайте количество ключей.
Другие советы
Для MyBatis: вам нужно использовать resaltyType вместо результатов. RecoveryPe должен быть возвращающимся типом данных сбора, узнав размер коллекции, вы можете получить нет. столбцов и более того, если вы идете с HASHMAP, вы можете получить имена столбцов в ключах.