
204
導
入
編
1
設
計
編
ア
キ
テ
ク
チ
ャ
編
2
3
4
5
6
7
4
データベースプログラム設 計
次に、データベースプログラムの設計について説明します。使用するフ
レームワークは、HibernateおよびMyBatisという前提で話を進めます。
O/R
マッピングの必要性
データベースプログラム設計では、O/Rマッピングフレームワークとし
てHibernateやMyBatisなどを使用します。では、なぜO/Rマッピングが
必要なのでしょうか?
確かに、以前はO/Rマッピングは使用しませんでした。JavaでもJDBC
(Java DataBase Connectivity)というデータベース製品に接続するための
APIが提供されています。今でも、開発プロジェクトによってはJDBCを
使っていることでしょう。ただ、JDBCが行うのは、①コネクションを取得
する、②渡されたSQLを実行する、③StringやIntegerといった基本的なク
ラスで結果を取得する、といったことだけです。SQLを組み立ててオブジェ
クトに結果を格納するのは、プログラムが行わなければなりません。
データベース論理設計の節で説明したように、オブジェクトの世界とデー
タベースのリレーションの世界には、インピーダンスミスマッチが存在しま
す。データベース論理設計の説明の中でも、リレーションでの継承の実現方
法や、多対多関連の関連テーブルでの表現方法を説明しました。さらに、オ
ブジェクトからのSQLの組み立てや、結果からのオブジェクトへの格納も、
インピーダンスミスマッチです。言うまでもなく、インピーダンスミスマッ ...