Hibernate

Hibernate annotationsにおける 遅延初期化のキャンセル

Hibernateはパフォーマンス向上のため遅延初期化の機能をもっています。 が、必ず アクセスされるオブジェクトについては遅延初期化は不要です。 .hbm.xml では 該当するクラスやプロパティに lazy="false" と書きます。一方 hibernate-annotationsでは, @Pr…

hibernate3 + hibernate-annotations 入門 (ry

id:mallowlabsのラブコールを受けて着手。でもあまり進まなかった。 Hibernateは無駄に奥が深いので困るです。 ダウンロード ダウンロード (ちょっと更新)http://www.agusa.i.is.nagoya-u.ac.jp/person/sydney/hibernate_sample1.zip

java.util.Listをいかにマップするか

java.util.List をマッピングする場合、@OneToMany や @ManyToMany を使います。しかし、これだけでは要素の順序が不定になってしまいます。また、一対多・多対多の、「多」に属するテーブルは、順序やインデックスを表す整数値のカラムを含むこともよくあり…

テーブルが共通のカラムを持つ場合

Hibernate Annotations を前回にひき続き使っています。かなり良いですね。 各テーブルが共通のカラムを持ってしまう状況 (更新時刻、削除フラグなど) が、実際のアプリケーション開発では出てきます。(正規化するのが正しい解の時もありますが、スキーマが…

Hibernate Annotationを使ってみるソース

Applicant というクラスを applicant テーブルにマッピングします。 JUnitで動作。Applicant.java import java.sql.Date; import javax.persistence.Entity; import javax.persistence.Id; /** * 受講申込者情報 */ @Entity abstract public class Applicant…

Hibernate Annotations を使い始めるときにハマったこと

Hibernateは、オープンソースのORマッピングフレームワークです。 http://www.hibernate.org/Hibernate Annotationsを使えば、あのくだらん 〜〜.hbm.xml を書かなくてよいとの事で、結構嬉しそうなので使ってみます。 本家のドキュメントと、Kishida's SITE…