我只是想获得有关此导入的解释,我在寻找一些很好的解释,但找不到它。

javax.persistence.UniqueConstraint


http://www.mkyong.com/hibernate/maven-hibernate-annonation-mysql-example/

我正在跟随这个例子进行休眠。
我能理解的其他一切。但是为什么我们在这里使用独特的约束呢?

@Table(name = "stock", catalog = "mkyong", uniqueConstraints = {
    @UniqueConstraint(columnNames = "STOCK_NAME"),
    @UniqueConstraint(columnNames = "STOCK_CODE") })


什么是目录?

我们还必须在这里声明唯一性吗?

@Column(name = "STOCK_CODE", unique = true, nullable = false, length = 10)


谢谢

最佳答案

@UniqueConstraint将允许您指定跨列的唯一约束,而在@Column中指定仅用于列。为了灵活性和一致性,某些商店/工程师将仅使用@UniqueConstraint,以便仅查看一个地方。

虽然特定于实现,但对于MySQL来说,它是数据库名称。

09-26 01:13