Oracleの場合、GenerationType.SEQUENCEを使用する必要があります
@Id
@GeneratedValue(generator="MySequence", strategy=GenerationType.SEQUENCE)
@SequenceGenerator(allocationSize=1, name="MySequence", sequenceName="MySequence")
編集:シーケンス名が更新されました
編集:コメントを参照してください:要件は、シーケンスを使用した複合/埋め込みID(主キーとして複数の列を使用)のように聞こえます。しかし残念ながら、どちらのソリューションもシーケンスジェネレーターをサポートしていません。これまでのところ、私は言うことができます。
* hibernateを使用してネイティブクエリを作成し、'を使用してインデックス番号に追加できますselect mySequence.nextval from dual
。
*または、サブクエリを介してシーケンスとインデックスを表示する新しい列を使用して、そのOracleビューを作成できます。
*これは非常に実験的なもので、試していませんが、@formulaアノテーションを使用できます。ここの例。