iBATIS は O/Rマッピングツールといわれるフレームワークのひとつ。 Apache プロジェクトで開発されている。
O/R マッピングツールであるが、Hibernate 等と違うのは SQL がそのまま使えること。
次のダウンロードサイトなどから ibatis-x.x.x.xxx.zip (最新版) を取得して、 適当なフォルダに展開する。
出てきたファイルをクラスパスの通っているところに置くか、 プロジェクト直下に置く。
最新版(2007/03/22時点)だとファイルが1つ (ibatis-2.3.0.677.jar) なんだけど、1つにまとまったのかな。
次に設定ファイルを書きます。
ファイル名はサンプルに従って 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> <properties resource="SqlMapConfig.properties" /> <settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" maxRequests="5" maxSessions="2" maxTransactions="2" useStatementNamespaces="false" /> <transactionManager type="JDBC" > <dataSource type="SIMPLE"> <property name="JDBC.Driver" value="${driver}"/> <property name="JDBC.ConnectionURL" value="${url}"/> <property name="JDBC.Username" value="${username}"/> <property name="JDBC.Password" value="${password}"/> </dataSource> </transactionManager> <!-- ここにリソース設定ファイルのパスを書く --> <sqlMap resource="sqlmap/login.xml" /> <sqlMap resource="sqlmap/getHogeTable.xml" /> : : </sqlMapConfig>
このファイルに直接設定を書いても良いけど、 ここは SqlMapConfig?.properties というファイルから設定を取ってくるようにする。
SqlMapConfig?.properties は、例えば Oracle の場合、こんな感じで書く。
driver=oracle.jdbc.driver.OracleDriver url=jdbc:oracle:thin:@127.0.0.1:1521:ORCL username=user password=passwd
iBATIS のプラグインがあるので、それも入れておく。
あとは指示に従ってインストール。
Hibernate Tools プラグインが入っていると、なぜか「構成にエラーがある」という旨のメッセージが出て 新たなプラグインがインストールできないことがある。 Hibernate Tools 自体がまだベータ(2007/03/23 17:03時点 私の環境では 3.2.0.beta9a)なので、何か不具合を抱えてるんだろうとは思うけど。
対処
とりあえず Hibernate プラグインを使わないのであれば、無効にすれば良い。