iBATIS

http://d.hatena.ne.jp/kagamih/searchdiary?word=iBATIS
iBATISについて知る機会がありました。何年か前にちょっとだけお遊びで使ったことあるだけで放置してました(^^;)。O/Rマッピングツールとしてはかなりメジャーなので興味があったところ。しかし、気になる点が以下の2項目。

  1. O/Rマッピング部分のXMLJavaソース
  2. 大規模開発におけるXML

Javaソース側で記述していることとXMLに定義していること(二重管理されていること)の不一致が起こらないのか心配です。実際、業務アプリケーションで使用しているデータ項目を仕様書にするのには、外部定義されているXMLから作成するほうが簡単ですから、開発効率が下がってでも仕様が明確になるのはうれしいことかもしれません。むしろO/Rマッピング仕様書→XMLファイル作成ツールが重要になってくるのですね。そこんところをどう解決しているのか実際使っているだろうid:kagamihさんにでも直接聞いてみたいところです。
後は、大規模プロジェクトにおけるXMLファイルの数が大量になることが心配です。XMLファイルの内容を検証するツールがあればいいのですけどねぇ。(作ればいいか・・・)
XMLに記述するカラム名称とJavaBean(それ以外も可能だが)にマッピングするクラス名とフィールド名などを外部に記述するということは、
Javaプログラムに影響がでない場合

  • データベースカラム名変更(プログラムを修正しないでも済むが名称が不一致になり分かりずらくなりそう)
  • テーブル構造変更

JavaプログラムおよびXMLに影響が出てしまう場合

  • 業務使用項目をデータベースに追加/削除
  • データベースカラムの型変更

全くデータベースアクセス周りのフレームワークを持っていないならとても有効ですね。