我们正在使用spring-boot
。我想在java类中添加基于条件的约束。例如。
@Entity
public class User {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "user_id")
private Integer userId;
@Column(name = "firstName")
private String firstName;
@Column(name = "lastName")
private String lastName;
}
字符串
现在在上面的代码中,我想把@NotNull
约束放在lastName
属性上,当且仅当firstName
属性不为空。
1条答案
按热度按时间ac1kyiln1#
在这种情况下,您可以使用验证组和自定义约束验证器来实现条件验证。下面是一个示例:
字符串
现在,定义ConditionalNotvalid注解和相应的ConditionalNotNullValidator:
型
ConditionalNotNullValidator:
型
这样,如果firstName字段不为空,则仅使用@ NotName验证lastName字段。如果firstName为空,则lastName被视为有效,而不管其值如何。