现有街道实体中有如下属性 @ManyToOne(cascade = {CascadeType.REFRESH}) @JoinColumn(name = "city_id") private CityEntity city; //所属城市@NotBlank(message = "街道编码不能为空") @Column(name = "street_code", length = 6) private String code; //街道代码
此时希望每个城市的街道名字不能重复 方法:
在entity的注解@Table 修改为:
@Table(name = "address_street", uniqueConstraints=@UniqueConstraint(columnNames={"city_id", "street_name"})) 总结:@UniqueConstraint 用法:为多个列联合唯一 @indexes 用法:为index对应的每个列加入唯一属性@Table(name = "address_street",indexes = {@Index(name = "cityId", columnList="city_id", unique = true),@Index(name = "name", columnList="street_name",unique = true)})