spring boot 获取配置文件值校验
1.配置文件校验
在使用配置文件校验时,必须使用@configurationproperties注解,@value不支持该注解,在类上添加@validated注解,标识该类会被校验@Email表示校验类型为email
@Data
@ConfigurationProperties(prefix = "Persion")
@Validated
@Component
public class Persion implements Serializable {
// @Value("${Persion.name}")
@Email
public String name;
}
2.校验类型
| @Null | 限制只能为null |
|---|---|
| @NotNull | 限制必须不为null |
| @AssertFalse | 限制必须为false |
| @AssertTrue | 限制必须为true |
| @DecimalMax(value) | 限制必须为一个不大于指定值的数字 |
| @DecimalMin(value) | 限制必须为一个不小于指定值的数字 |
| @Digits(integer,fraction) | 限制必须为一个小数,且整数部分的位数不能超过integer,小数部分的位数不能超过fraction |
| @Future | 限制必须是一个将来的日期 |
| @Max(value) | 限制必须为一个不大于指定值的数字 |
| @Min(value) | 限制必须为一个不小于指定值的数字 |
| @Past | 验证注解的元素值(日期类型)比当前时间早 |
| @Pattern(value) | 限制必须符合指定的正则表达式 |
| @Size(max,min) | 限制字符长度必须在min到max之间 |
| @NotEmpty | 验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0) |
| @NotBlank | 验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格 |
| 验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式 |

浙公网安备 33010602011771号