iBATOR - Введение
iBATOR - это генератор кода для iBATIS. iBATOR анализирует одну или несколько таблиц базы данных и генерирует артефакты iBATIS, которые можно использовать для доступа к таблицам.
Позже вы можете написать собственный код SQL или хранимую процедуру в соответствии с вашими требованиями. iBATOR генерирует следующие артефакты -
- XML-файлы SqlMap
- Классы Java для соответствия первичному ключу и полям таблицы (таблиц)
- Классы DAO, которые используют указанные выше объекты (необязательно)
iBATOR может работать как отдельный файл JAR, как задача Ant или как плагин Eclipse. В этом руководстве описывается самый простой способ создания файлов конфигурации iBATIS из командной строки.
Скачать iBATOR
Загрузите автономный JAR, если вы используете IDE, отличную от Eclipse. Автономный JAR включает задачу Ant для запуска iBATOR, или вы можете запустить iBATOR из командной строки кода Java.
Вы можете загрузить zip-файл со страницы Download iBATOR .
Вы можете проверить онлайн-документацию - iBATOR Documentation .
Создание файла конфигурации
Чтобы запустить iBATOR, выполните следующие действия:
Шаг 1
Создайте и соответствующим образом заполните файл конфигурации ibatorConfig.xml. Как минимум, вы должны указать -
А <jdbcConnection> , чтобы указать, как подключиться к целевой базе данных.
А <javaModelGenerator> , чтобы указать целевой пакет и целевой проект для сгенерированных объектов модели Java.
А <sqlMapGenerator> , чтобы указать целевой пакет и целевой проект для сгенерированных файлов сопоставления SQL.
А <daoGenerator> для указания целевого пакета и целевого проекта для сгенерированных интерфейсов и классов DAO (вы можете опустить элемент <daoGenerator>, если вы не хотите создавать DAO).
Как минимум одна база данных <table> элемент
NOTE −См. Страницу « Справочник по XML-файлу конфигурации» для получения примера файла конфигурации iBATOR.
Шаг 2
Сохраните файл в удобном месте, например, по адресу: \ temp \ ibatorConfig.xml.
Шаг 3
Теперь запустите iBATOR из командной строки следующим образом:
java -jar abator.jar -configfile \temp\abatorConfig.xml -overwrite
Он сообщит iBATOR о необходимости запуска с использованием вашего файла конфигурации. Он также сообщит iBATOR о необходимости перезаписать любые существующие файлы Java с тем же именем. Если вы хотите сохранить какие-либо существующие файлы Java, опустите−overwrite параметр.
В случае конфликта iBATOR сохраняет вновь созданный файл с уникальным именем.
После запуска iBATOR вам необходимо создать или изменить стандартные файлы конфигурации iBATIS, чтобы использовать вновь созданный код. Это объясняется в следующем разделе.
Задачи после запуска iBATOR
После запуска iBATOR вам необходимо создать или изменить другие артефакты конфигурации iBATIS. Основные задачи следующие:
- Создайте или измените файл SqlMapConfig.xml.
- Создайте или измените файл dao.xml (только если вы используете iBATIS DAO Framework).
Каждая задача подробно описана ниже -
Обновление файла SqlMapConfig.xml
iBATIS использует XML-файл, обычно называемый SqlMapConfig.xml, для указания информации для подключения к базе данных, схемы управления транзакциями и XML-файлов карты SQL, которые используются в сеансе iBATIS.
iBATOR не может создать этот файл за вас, потому что он ничего не знает о вашей среде выполнения. Однако некоторые элементы в этом файле напрямую связаны с элементами, созданными iBATOR.
Конкретные потребности iBATOR в файле конфигурации следующие:
- Необходимо включить пространства имен операторов.
- Должны быть перечислены XML-файлы карты SQL, созданные iBATOR.
Например, предположим, что iBATOR сгенерировал XML-файл карты SQL с именем MyTable_SqlMap.xml, и этот файл был помещен в пакет test.xml вашего проекта. В файле SqlMapConfig.xml должны быть эти записи -
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<!-- Statement namespaces are required for Abator -->
<settings useStatementNamespaces="true" />
<!-- Setup the transaction manager and data source that are
appropriate for your environment
-->
<transactionManager type="...">
<dataSource type="...">
</dataSource>
</transactionManager>
<!-- SQL Map XML files should be listed here -->
<sqlMap resource="test/xml/MyTable_SqlMap.xml" />
</sqlMapConfig>
Если существует более одного XML-файла карты SQL (что довольно часто), то файлы могут быть перечислены в любом порядке с повторяющимися элементами <sqlMap> после элемента <transactionManager>.
Обновление файла dao.xml
Инфраструктура iBATIS DAO настраивается с помощью XML-файла, обычно называемого dao.xml.
Платформа iBATIS DAO использует этот файл для управления информацией о подключении к базе данных для DAO, а также для перечисления классов реализации DAO и интерфейсов DAO.
В этом файле вы должны указать путь к вашему файлу SqlMapConfig.xml и всем интерфейсам DAO и классам реализации, созданным iBATOR.
Например, предположим, что iBATOR сгенерировал интерфейс DAO под названием MyTableDAO и класс реализации под названием MyTableDAOImpl, и что файлы были помещены в пакет test.dao вашего проекта.
В файле dao.xml должны быть эти записи -
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE daoConfig PUBLIC "-//ibatis.apache.org//DTD DAO Configuration 2.0//EN" "http://ibatis.apache.org/dtd/dao-2.dtd">
<daoConfig>
<context>
<transactionManager type="SQLMAP">
<property name="SqlMapConfigResource" value="test/SqlMapConfig.xml"/>
</transactionManager>
<!-- DAO interfaces and implementations should be listed here -->
<dao interface="test.dao.MyTableDAO" implementation="test.dao.MyTableDAOImpl" />
</context>
</daoConfig>
NOTE − Этот шаг требуется только в том случае, если вы сгенерировали DAO для инфраструктуры iBATIS DAO.