5.6. 生成プロパティ

5.6. 生成プロパティ

生成プロパティとは、データベースによって生成された値を持つプロパティです。通常、 Hibernate アプリケーションは、データベースが値を生成したプロパティを含むオブジェクトを リフレッシュ する必要がありました。しかし、プロパティが生成されたということをマークすることで、アプリケーションはリフレッシュの責任を Hibernate に委譲します。基本的に、生成プロパティを持つと定義したエンティティに対して Hibernate が INSERT や UPDATE の SQL を発行した後すぐに、生成された値を読み込むための SELECT SQL が発行されます。

生成プロパティは、挿入不可能かつ更新不可能でなければなりません。 項5.1.7. 「version(オプション)」 バージョン、 項5.1.8. 「timestamp(オプション)」 タイムスタンプ、 項5.1.9. 「property」 簡単なプロパティだけが生成されたとマークできます。

never (デフォルト) - 与えられたプロパティの値は、データベースから生成されないことを意味します。

insert - 与えられたプロパティの値は挿入時に生成されるが、続いて起こる更新時には生成されないこと示します。作成された日付などは、このカテゴリに分類されます。 項5.1.7. 「version(オプション)」 バージョンや 項5.1.8. 「timestamp(オプション)」 タイムスタンプのプロパティは生成されたとマークできますが、このオプションは利用できないことに注意してください。

always - 挿入時も更新時もプロパティの値が生成されることを示します。