在休眠 JPA2 上使用唯一约束
2022-09-01 19:36:27
如何在休眠 POJO 上实现我的独特约束?假设数据库不包含任何内容。
我在注释中看到了唯一属性,但我无法让它工作?
如果我想将此约束应用于多个列,该怎么办?@Column()
如何在休眠 POJO 上实现我的独特约束?假设数据库不包含任何内容。
我在注释中看到了唯一属性,但我无法让它工作?
如果我想将此约束应用于多个列,该怎么办?@Column()
您可以使用类中的注释声明唯一约束@Table(uniqueConstraints = ...)
@Entity
@Table(uniqueConstraints=
@UniqueConstraint(columnNames = {"surname", "name"}))
public class SomeEntity {
...
}
基本上,如果没有数据库支持,就无法实现唯一约束。
@UniqueConstraint
和属性是模式生成工具生成相关约束的说明,它们本身不实现约束。unique
@Column
您可以在插入新实体之前执行某种手动检查,但在这种情况下,您应该了解并发事务可能存在的问题。
因此,在数据库中应用约束是首选。