java 中的@UniqueConstraint注释

2022-08-31 06:11:25

我有一个Java豆。现在,我想确保该字段应该是唯一的。

我使用以下代码:

@UniqueConstraint(columnNames={"username"})
public String username;

但是我遇到了一些错误:

@UniqueConstraint is dissallowed for this location

使用唯一约束的正确方法是什么?

注意:我正在使用游戏框架。


答案 1

要确保字段值是唯一的,您可以编写

@Column(unique=true)
String username;

@UniqueConstraint注释用于在表级别注释多个唯一键,这就是为什么在将其应用于字段时出错的原因。

参考文献(JPA TopLink):


答案 2

您可以使用以下语法在类级别使用

@Entity
@Table(uniqueConstraints={@UniqueConstraint(columnNames={"username"})})
public class SomeEntity {
    @Column(name = "username")
    public String username;
}

推荐