@GeneratedValue

UUID@Id ではない場合、@GeneratedValue を追加できます。そうすると、Ebean が適切な UUID ジェネレーターを割り当てます。

/** The Id property using DB Identity or Sequence */
@Id @GeneratedValue
private long id;

/** Alternate unique UUID property */
@GeneratedValue @Column(unique = true)
private UUID uid;

ネイティブストレージ

UUID には、次のデータベースプラットフォームでネイティブサポートがあります。

  • H2
  • Postgres
  • SQL Server 17

これらのデータベースプラットフォームを使用すると、UUID はネイティブマナーで格納されます。

バイナリストレージ

BINARY(16) として格納され、インデックスでの分布を向上させるためにバイトの順序が変更された最適化されたマナーで格納するオプションがあります。

Varchar ストレージ

VARCHAR(40) として格納されます。

DatabaseConfig.setDbUuid()

データベースプラットフォームで UUID をネイティブでサポートしていない場合、DatabaseConfig.setDbUuid(...) で格納オプションを構成できます。