iBATOR - Wprowadzenie
iBATOR to generator kodu dla iBATIS. iBATOR dokonuje introspekcji co najmniej jednej tabeli bazy danych i generuje artefakty iBATIS, których można użyć w celu uzyskania dostępu do tabel.
Później możesz napisać własny kod SQL lub procedurę składowaną, aby spełnić swoje wymagania. iBATOR generuje następujące artefakty -
- Pliki XML SqlMap
- Klasy Java pasujące do klucza podstawowego i pól tabel
- Klasy DAO korzystające z powyższych obiektów (opcjonalnie)
iBATOR może działać jako samodzielny plik JAR, jako zadanie Ant lub jako wtyczka Eclipse. W tym samouczku opisano najprostszy sposób generowania plików konfiguracyjnych iBATIS z wiersza poleceń.
Pobierz iBATOR
Pobierz samodzielny plik JAR, jeśli używasz środowiska IDE innego niż Eclipse. Samodzielny plik JAR zawiera zadanie Ant do uruchomienia iBATORA lub można go uruchomić z wiersza poleceń kodu Java.
Możesz pobrać plik zip z Pobierz iBATOR .
Możesz sprawdzić dokumentację online - iBATOR Documentation .
Generowanie pliku konfiguracyjnego
Aby uruchomić iBATOR, wykonaj następujące kroki -
Krok 1
Utwórz i odpowiednio wypełnij plik konfiguracyjny ibatorConfig.xml. Jako minimum musisz określić -
ZA <jdbcConnection> element, aby określić sposób łączenia się z docelową bazą danych.
ZA <javaModelGenerator> element, aby określić pakiet docelowy i projekt docelowy dla wygenerowanych obiektów modelu Java.
ZA <sqlMapGenerator> element, aby określić pakiet docelowy i projekt docelowy dla wygenerowanych plików map SQL.
ZA <daoGenerator> element, aby określić pakiet docelowy i projekt docelowy dla wygenerowanych interfejsów i klas DAO (możesz pominąć element <daoGenerator>, jeśli nie chcesz generować DAO).
Co najmniej jedna baza danych <table> element
NOTE −Zobacz stronę odniesienia pliku konfiguracyjnego XML, aby zapoznać się z przykładem pliku konfiguracyjnego iBATOR.
Krok 2
Zapisz plik w dogodnej lokalizacji, na przykład w: \ temp \ ibatorConfig.xml.
Krok 3
Teraz uruchom iBATOR z wiersza poleceń w następujący sposób -
java -jar abator.jar -configfile \temp\abatorConfig.xml -overwrite
Poinformuje iBATOR o uruchomieniu przy użyciu pliku konfiguracyjnego. Poinformuje również iBATOR o nadpisaniu wszystkich istniejących plików Java o tej samej nazwie. Jeśli chcesz zapisać istniejące pliki Java, pomiń rozszerzenie−overwrite parametr.
W przypadku konfliktu iBATOR zapisuje nowo wygenerowany plik pod unikalną nazwą.
Po uruchomieniu iBATORA, musisz utworzyć lub zmodyfikować standardowe pliki konfiguracyjne iBATIS, aby wykorzystać nowo wygenerowany kod. Jest to wyjaśnione w następnej sekcji.
Zadania po uruchomieniu iBATORA
Po uruchomieniu iBATORA należy utworzyć lub zmodyfikować inne artefakty konfiguracji iBATIS. Główne zadania są następujące -
- Utwórz lub zmodyfikuj plik SqlMapConfig.xml.
- Utwórz lub zmodyfikuj plik dao.xml (tylko jeśli używasz iBATIS DAO Framework).
Każde zadanie zostało szczegółowo opisane poniżej -
Aktualizowanie pliku SqlMapConfig.xml
iBATIS używa pliku XML, powszechnie nazywanego SqlMapConfig.xml, w celu określenia informacji dotyczących połączenia z bazą danych, schematu zarządzania transakcjami oraz plików XML mapy SQL, które są używane w sesji iBATIS.
iBATOR nie może utworzyć tego pliku za Ciebie, ponieważ nic nie wie o Twoim środowisku wykonawczym. Jednak niektóre elementy w tym pliku odnoszą się bezpośrednio do elementów wygenerowanych przez iBATOR.
Specyficzne potrzeby iBATORA w pliku konfiguracyjnym są następujące -
- Przestrzenie nazw instrukcji muszą być włączone.
- Muszą być wymienione pliki XML mapy SQL wygenerowane przez iBATOR.
Na przykład załóżmy, że iBATOR wygenerował plik XML mapy SQL o nazwie MyTable_SqlMap.xml i że plik ten został umieszczony w pakiecie test.xml projektu. Plik SqlMapConfig.xml powinien zawierać te wpisy -
<?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>
Jeśli istnieje więcej niż jeden plik XML mapy SQL (co jest dość powszechne), wówczas pliki można wyświetlić w dowolnej kolejności z powtarzającymi się elementami <sqlMap> po elemencie <transactionManager>.
Aktualizacja pliku dao.xml
Framework iBATIS DAO jest konfigurowany przez plik xml, powszechnie nazywany dao.xml.
Framework iBATIS DAO używa tego pliku do kontrolowania informacji o połączeniach z bazą danych dla DAO, a także do tworzenia listy klas implementacji DAO i interfejsów DAO.
W tym pliku należy określić ścieżkę do pliku SqlMapConfig.xml oraz wszystkich interfejsów DAO i klas implementacji wygenerowanych przez iBATOR.
Na przykład załóżmy, że iBATOR wygenerował interfejs DAO o nazwie MyTableDAO i klasę implementacji o nazwie MyTableDAOImpl oraz że pliki zostały umieszczone w pakiecie test.dao projektu.
Plik dao.xml powinien zawierać te wpisy -
<?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 − Ten krok jest wymagany tylko wtedy, gdy wygenerowałeś DAO dla frameworka iBATIS DAO.