@GeneratedValue
如果我们有一个不是 @Id 的 UUID
,我们可以添加 @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(...)
配置存储选项。