通过javax.validation.constraints下的注解实现字段验证

@NotNull

使用该注解的字段的值不能为null,否则验证无法通过。
实体类代码:

@Entity
@Data
public class Person {

    @Id
    @GeneratedValue
    private Integer id;

    @NotNull(message = "name不能为空")
    private String name;

    private Integer age;

}

在控制器接受参数时,添加@Valid注解,例如:

public String indexUI(@Valid Person person, BindingResult result)

可以通过BindingResult对象获取相关的错误提示。


其他验证的注解

  • @Null
    修饰的字段在验证时必须是null,否则验证无法通过。

  • @Size
    如下代码表示,修饰的字段长度不能超过5或者低于。

    @Size(min = 1, max = 5)
    private String name;
  • @Max
    如下代码表示,该字段的最大值为19,否则无法通过验证。
    @Max(value = 19)
    private Integer age;
  • @Min
    同理,被该注解修饰的字段的最小值,不能低于某个值。

  • @AssertFalse
    该字段值为false时,验证才能通过。

  • @AssertTrue
    该字段值为true时,验证才能通过。

  • @DecimalMax
    验证小数的最大值。

    @DecimalMax(value = "12.35")
    private double money;
  • @DecimalMin
    验证小数的最小值。

  • @Digits
    验证数字的整数位和小数位的位数是否超过指定的长度。

   @Digits(integer = 2, fraction = 2)
    private double money;
  • @Future
    验证日期是否在当前时间之后,否则无法通过校验。
    @Future
    private Date date;
  • @Past
    验证日期是否在当前时间之前,否则无法通过校验。

  • @Pattern
    用于验证字段是否与给定的正则相匹配。

    @Pattern(regexp = "[abc]")
    private String name;

你可能感兴趣的:(JAVA)