Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)


6.5.1 主キーの生成方式に関する注意事項

ここで説明する機能は,Entityオブジェクトを用いてレコードを挿入するときに,ユーザが主キー値を指定しなくても一意の値が格納されるようにする機能です。ユーザアプリケーションのEntityクラスに定義する@GeneratedValueのstrategy要素に設定する値によって主キーの生成方法が異なります。この機能はJPA規約で規定された生成パターンを提供しますが,サポートするパターンは各データベースに依存します。HiRDB使用時に,@GeneratedValueのstrategy要素に設定する値による主キーの生成方式の違いを次の表に示します。

表6‒4 @GeneratedValueのstrategy要素に設定する値による主キーの生成方式の違い

Strategy要素の定義値

HiRDB使用時の処理内容

標準仕様の概要

GenerationType.TABLE

主キー値を保持しておくためのテーブルを使用して,主キー値を生成します。

主キー値を保存しておくためのテーブルを使用して,主キー値を割り当てます。

GenerationType.SEQUENCE

TABLEと同じ処理をします。

データベースのシーケンス機能を使用し,主キー値を割り当てます。

GenerationType.IDENTITY

TABLEと同じ処理をします。

データベースのidentity列を使用して主キー値を割り当てます。

GenerationType.AUTO

TABLEと同じ処理をします。

使用しているデータベースに適した生成方法を選択する方法です。