jpa注解唯一和非空失效
@Id @GeneratedValue(strategy=IDENTITY)
@Column(name="ID", unique=true, nullable=false)
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
@Column(unique=true, nullable=false)
public String getLoginName() {
return this.loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
@Column( unique=true, nullable=false)
public String getLoginPwd() {
return this.loginPwd;
}
public void setLoginPwd(String loginPwd) {
this.loginPwd = loginPwd;
}
//////////////////////////////////////////////////测试代码
@Test
public void testRelation(){
Configuration cfg=new AnnotationConfiguration().configure("/hibernate.cfg.xml");
SessionFactory factory=cfg.buildSessionFactory();
Session session=factory.openSession();
Transaction tr=session.beginTransaction();
Admin admin=new Admin();
admin.setLoginName("");
admin.setLoginPwd("");
admin.setPrivileges("");
session.save(admin);
tr.commit();
}//目前是无论是空还是重复都添加到数据库里.谁能指点一下
------解决方案--------------------你确定你实体上的注解没错?
------解决方案--------------------这个标注是用在反向工程中的,只是标记一下,并不会进行检查。