JPA如何确保2个字段(字符串和布尔值)的唯一性

时间:2019-03-13 14:36:17

标签: jpa

我想创建一个包含2个字段的实体,这些字段必须在一起唯一。字段之一是布尔值:

@Entity
public class SoldToCountry {

    private String countryId;


    private Boolean isInt;
}

对于给定的字符串,不应存在两个以上的条目,一个包含isInt:true,另一个包含isInt:false

我阅读了有关@Id的文档,但似乎不支持布尔值。对我来说,在两个字段上都使用唯一的约束并使用生成的ID也可以。

通过JPA获得此约束的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

如果您的表实际上只有两个字段,并且您希望它们是唯一的,则它们应该是表的复合PK。看看How to create and handle composite primary key in JPA

相反,如果您还有另一个PK,请考虑塞巴斯蒂安的评论。