как получить метаданные столбца в mybatis - PullRequest
1 голос
/ 25 сентября 2010

Мне нужно получить список столбцов в таблице, используя mybatis / ibatis в Java 1.5.

Ответы [ 2 ]

2 голосов
/ 01 октября 2010

Это не типичное требование (99,99% приложений, использующих iBatis или любой другой ORM, знает схему БД). iBatis - это картограф SQL, вы должны написать SQL-запрос самостоятельно. И нет стандартного SQL-запроса (AFAIK), который бы давал вам количество столбцов в таблице.

Я могу предложить только два подхода:

  1. Сделайте запрос SQL, выбирая из таблиц каталога. Это нормальный способ узнать о метаданных вашей БД. Но это зависит от вашего конкретного движка базы данных. И это не имеет отношения к iBatis.

  2. Быстрый и грязный: сделайте специальный запрос SELECT * FROM MYTABLE LIMIT 1 (замените LIMIT для вашего аналога БД), отобразите это в iBatis через HashMap, а в вашем DAO просто посчитайте количество ключей.

0 голосов
/ 15 ноября 2011

Для Mybatis: вам нужно использовать resultType вместо resultmap.Аргумент resultType должен возвращать тип данных коллекции, зная размер коллекции, который вы можете получить.столбцов и более, если вы собираетесь использовать HashMap, вы можете получить имена столбцов также в ключах.

...