いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

iBatis奮闘記-0001 (インストール)

iBatisは、Hibernateなどと同じくO/Rマッピングライブラリです。
ただし、Hibernateなどと違うのはSQLを直に書いて処理を行うという点です。
つまり、SQLのパワーをフルで使えます。普段からSQLをゴリゴリ書いている人には
合うんではないでしょうか。
今回、ちょこちょこ触りだしたので、メモしておきます。間違っている箇所が
多数だと思いますのでそちらはご勘弁を。m(_ _)m ツッコミ大歓迎です。

今回、データベースを以下のものとしました。

  • H2 Database Engine

H2の設定などは、http://d.hatena.ne.jp/gsf_zero1/20060713/1152790091を参照してみてください。


で、まずはインストールから。
モジュールをDownloadして展開。中に

がありますので、これをクラスパスに追加で終わりです。
配布パッケージのjar-dependencies.txtには、
"iBatis 2.0は、JDK1.4以上の環境で動かす分には他のライブラリに依存していません。"
って記述があるので、基本は上記の3つのみで動くみたいです。
オプションとして、CGLIBとかを入れるとバイトコード拡張オプションとかが
使用できるようになる模様。でも、一応以下のものも追加しました。

  • commons-logging
  • commons-lang
  • log4j


次は、おなじみ設定ファイルの作成。
iBatisで絶対必要なのが、コネクションの設定などを記述したConfigファイル。
ファイル名はなんでもいいみたいです。今回は、SqlMapConfig.xmlとしました。

<?xml version="1.0"?>
<!DOCTYPE sqlMapConfig
    PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
    "http://www.ibatis.com/dtd/sql-map-config-2.dtd">

<sqlMapConfig>
    <properties resource="SqlMapConfig.properties"/>

    <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>
</sqlMapConfig>

チュートリアルを読むと、データベースの設定は別のプロパティファイルに
記述して読み込んでますので、それにならいます。これは、Antとか別のところで
データベースに繋ぐ必要がある場合に、また別のファイルを作らなくていいように
するための配慮でしょう。たしかに便利。大体、プロジェクトでは別の設定ファイルを
持ったりしたりするものですので。

driver=org.h2.Driver
url=jdbc:h2:tcp://localhost/test;
username=sa
password=

これで、はじめの設定は終わりです。
後は、作ってみて実際に動かしてみます。