Hibernate は、Java のためのオブジェクト関係マッピング (ORM) ライブラリであり、オブジェクト指向のドメインモデルを関係データベースにマッピングするためのフレームワークを提供する。Hibernate は、永続性に関わるデータベースアクセスを直接高レベルなオブジェクト操作機能に置換することでオブジェクト指向と関係モデルの不整合を解決する。Hibernate はオープンソースのフリーソフトウェアであり、GNU Lesser General Public License で提供されている。第一の機能は、Javaクラスからデータベースの表(およびJavaデータ型からSQLデータ型)へのマッピングである。また、データのクエリと検索機能も提供する。SQL呼び出しを自動生成することで、開発者がSQL呼び出しの結果をいちいちオブジェクトに変換する手間から解放し、性能への影響を最小にしつつ、あらゆるSQLデータベースへの移植性を達成している。Hibernate は Plain Old Java Object (POJO) のための透過的永続性を提供する。永続性クラスに要求されることは、引数のない コンストラクタ が存在することであり、コンストラクタの可視性が "public" でなくともよい(一部アプリケーションでは、"equals()" と "hashCode()" メソッドにも注意が必要)。Hibernate には「ダーティチェッキング」機能がある。この機能は、永続的オブジェクトの変更されたフィールドについてのみ SQL による更新を行うもので、不必要なデータベース更新を削減する。Hibernate は「HQL」というSQLライクなクエリ言語を提供している。オブジェクト指向的な代替手段としてクライテリアクエリも提供されている。Hibernate はスタンドアローンのJavaアプリケーションにも使えるし、Java Servlet や EJBセッションビーンを使った Java EE アプリケーションにも使える。Hibernate は Gavin King をリーダーとして世界中の Java ソフトウェア開発者がチームを結成して開発した。その後、JBoss社(現在はレッドハットの一部)が Hibernate の主要開発者を雇い入れ、サポートを行うようになった。バージョン3.xでは、Interceptor/Callback アーキテクチャ、ユーザ定義フィルタ、JDK 5.0 アノテーション(Javaのメタデータ機能)などの新機能が新たに追加された。このバージョンはEJB 3.0仕様とも非常に近く(ただし、EJB 3.0仕様が完成しJava Community Processによってリリースされる前にリリースされた)、JBossのEJB 3.0実装の基盤となった。Hibernate はモジュール化され、それぞれ独立したチームが開発している。JavaオブジェクトとSQLの変換をするには、JavaクラスとSQLテーブルの間の「マッピングデータ」がなければならない。Hibernate はこのためのいくつかの手段を提供する。不要なSQLによる更新を防ぐため、Hibernate はダーティチェッキングという機能を提供している。この機能は、永続的オブジェクトの変更されたフィールドやコレクションのみを更新できるようにするものである。コレクションに含まれない部分の更新が必要かどうかを確認するため、Hibernate はそれらのフィールドを codice_5 メソッドで比較する。一方、コレクションフィールド(codice_6 や codice_7 など)は同一性(参照)比較を行う。Hibernate API は、パッケージ org.hibernate で提供されている。
出典:wikipedia
LINEスタンプ制作に興味がある場合は、
下記よりスタンプファクトリーのホームページをご覧ください。