2

要在多个列上指定 UniqueConstraint,我使用 @Table 注释并指定 uniqueConstraint 的值。我还想根据这种情况添加一个空约束:

@Entity
public class Contact{
  private PhoneBook phoneBook;
  private ContactGroup group;
}

实体可以在电话簿中,也可以在组中,但不能同时在两者中,因为组已经引用了它所属的电话簿。在这种情况下,phonebook 和 group 都不能为空,并且不能都设置,一次只能设置一个。

在 netbeans 7.2、glassfish 3.2 eclipselink 2.0 上工作

谢谢。

4

2 回答 2

0

我会简单地投入ConstraintViolationExceptionphoneBook根据group条件投入使用。

于 2012-09-12T07:04:28.813 回答
0
import javax.validation.constraints.NotNull;

@Entity
public class Contact{

  @NotNull
  private PhoneBook phoneBook;

  @NotNull
  private ContactGroup group;
}

应该管用 :)

编辑:

对不起,现在我看到你在写交叉验证,可能你必须编写自己的验证器。

于 2012-09-11T11:04:10.877 回答