hibernate unique 唯一值约束不起作用 困惑

我 表里面的 rolename字段 我希望 保持唯一值。如果重复就报 不报唯一值约束的错误 。

可现在不管我 把 unique=true 和 unique=false 都不起作用。

[code="java"] @Column(nullable = false, length = 20, unique = false)
public String getRolename() {
return rolename;
}[/code]


[code="java"] @Column(nullable = false, length = 20, unique = true)
public String getRolename() {
return rolename;
}[/code]

添加重复的也不错误。还能正常 添加或修改。
[b]问题补充:[/b]
@Column(nullable = false, length = 20, unique = true)

public String getRolename() {

return rolename;

}

我这样写了,但效果没出来。 填相同值也不抱错。

hibernate的unique是给生成DDL的时候使用,所以你需要检查下数据库的schema,那里加了unique约束才是有效的

你这种写法是正确的:

[code="java"]
@Column(nullable = false, length = 20, unique = true)
public String getRolename() {
return rolename;
}
[/code]