hibernate的@unique用处何在

在看springside的min-web的源码时,发现User类时用到这个注释,其实这个unique是没有用的,就如源码注解所说

 

//字段非空且唯一, 用于提醒Entity使用者及生成DDL.
@Column(nullable = false, unique = true)
public String getLoginName() {
	return loginName;
}

 只有在生成DDL的时候有用,在插入数据的时候是不起唯一校验的作用的。如果想防止数据重复添加,要么在数据库上建立唯一索引(数据库保证),要么在插入时提前校验(人为保证)。当然,多数情况下是两者结合。而springside写出来,也是仅是起提醒作用。

 

DML:http://baike.baidu.com/view/566000.htm

DDL:http://baike.baidu.com/view/68372.htm

DCL:http://baike.baidu.com/view/1089254.htm

你可能感兴趣的:(Web,Hibernate)