1.Hibernate の基本
Hibernate 1章 Hibernate の基本
- 1.1. Hibernate とは
- 1.2. Hibernate で何がどうなる?
- 1.3. 環境の準備
1.1 Hibernate とは
Hibernate は O/R マッパーと呼ばれるものです。
O/R マッパーとは、Object指向における Object と Relationalデータベース(RDB)を 巧妙に関連付け(マッピング)るためのツールです。
今やプログラミング言語の主流となった Object 指向と、 データベースの標準となった Relational データベース(RDB)。 この両者を利用してアプリケーションを開発する際、とても煩雑に思えることが多々あります。
- データベースへ問合せの結果セットからのオブジェクトの生成
- データベースのスキーマ変更に伴うプログラムの変更
このような問題は、「オブジェクト指向」と「リレーショナルデータベース」の 間に、「思想の違い」という大きな溝があることに起因します。 「オブジェクト指向」では、データモデルを「現実世界」に即した形で設計するのに対して、 「リレーショナルデータベース」におけるデータモデルは、「正規化」を基本に、 検索処理や登録処理を最適化することを目的に設計されます。 このような両者の思想の違いが、両者のシームレスな連携を阻害しているのです。
この両者の思想の違いは「(オブジェクト・リレーショナル)インピーダンス・ミスマッチ」と呼ばれ、 「オブジェクト指向」と「リレーショナルデータベース」がそれぞれ、「ソフトウェア工学」「数学的アプローチ」 から生まれたという出生の違いに起因すると説明することもできます。
Hibeanate をはじめ O/R マッパーは、このようなインピーダンス・ミスマッチを吸収することをそもそもの目的としています。 その上で、実はインピーダンス・ミスマッチに起因する「煩雑」な作業を肩代わりしてくれたりもするのです。
関連記事
- 1.Hibernate の基本 (2) : ORマッパーであるHibernateの概要について説明しています