TOPシステム開発> はじめに




O/Rマッピングツール
徹底比較!! O/Rマッピングツール

第7回:それぞれのメリット/デメリット
著者:ビーブレイクシステムズ  山之内 弘行   2006/9/4
1   2  3  次のページ
はじめに

   皆さん、こんにちは。本連載を担当するビーブレイクシステムズの山之内です。

   前回まで「iBATIS」「Torque」「Hibernate」という3つのO/Rマッピングツールを見てきました。実際に各フレームワークを利用してサンプルを作成することで、各フレームワークの特長をつかめたかと思います。

   最終回となる今回は、まとめとして各フレームワークの特長やクセに注目し、メリット/デメリットをあげながら各フレームワークを比較していきます。また、軽くではありますがEJB 3.0も取り上げ、その特長を説明したいと思います。

各フレームワークの特長

   iBATIS、Torque、Hibernateの3つのO/Rマッピングツールの特長を表1にまとめました。

iBATIS
「SQL Maps」というO/Rマッピング機能と、「DAO Framework」というDAOパターン用のフレームワークで構成されている。マッピング・ファイルにSQL文を記述する必要がある。
Torque
Active Recordパターン(エンティティが「O/Rマッパー」の基底クラスを継承する)に基づいているタイプのフレームワークで、SQL文を記述せずにデータベースにアクセスすることができる。バージョン3.1からGenerator(開発環境)とRuntime(実行環境)がモジュール分割されている。
Hibernate
機能が豊富にあり、オブジェクトクエリ言語の「HQL」や、シンプルで扱いやすいAPIを提供する。

表1:iBATIS、Torque、Hibernateの特長

   iBATISの最大の特長は、マッピング・ファイルにSQL文を記述することです。「第2回:SQLを直接記述できるiBATIS(前編)」「第3回:SQLを記述しない『Torque』」では、基本的なSQL文は自動生成されたマッピング・ファイルのSQL文をそのまま使用しましたが、内部結合を行うSQL文はマッピング・ファイルに直接記述しました。

   Torqueの最大の特長は、SQL文を使用せずにデータベースにアクセスできる点です。

   「第4回:SQLを記述しない『Torque』」では、Torqueで用意されている各メソッドやCriteriaクラスを使用してSQLを一切記述することなくデータベースにアクセスしました。

   Torqueで用意されているAPIを使用することで、TorqueがSQL文を自動的に組み立ててくれるのでSQLレスの開発が可能となります。

   一方、Hibernateの最大の特長は多機能であることです。「第5回:多機能なHibernate(前編)」「第6回:多機能なHibernate(後編)」ではiBATISやTorqueにない機能の1つとしてオブジェクトクエリ言語の「HQL」を紹介しました。「HQL」はオブジェクトをベースに考えられているので、オブジェクトをベースとした検索が可能となります。またHibernateでは、Criteriaクラスを使ったデータベースアクセスも可能です。


1   2  3  次のページ


株式会社ビーブレイクシステムズ 山之内 弘行氏
著者プロフィール
株式会社ビーブレイクシステムズ  山之内 弘行
Javaスペシャリスト
前職ではJavaを用いたシステム開発をメインに作業を行う。更なるキャリアアップを目指し、実力次第で上流工程に携われるビーブレイクシステムズに転職。現在はJavaアーキテクトとして活躍中。


この記事の評価をお聞かせください
ボタンをクリックしますとウインドウが開きます。

INDEX
第7回:それぞれのメリット/デメリット
はじめに
  各フレームワークのメリット/デメリット
  EJB 3.0
徹底比較!! O/Rマッピングツール
第1回 O/Rマッピングとは?
第2回 SQLを直接記述できるiBATIS(前編)
第3回 SQLを直接記述できるiBATIS(後編)
第4回 SQLを記述しない「Torque」
第5回 多機能なHibernate(前編)
第6回 多機能なHibernate(後編)
第7回 それぞれのメリット/デメリット

注目おすすめ情報