- 先了解下什么是JCP(Java Community Process)?
JCP(Java Community Process) 是一个开放的国际组织,主要由Java开发者以及被授权者组成,职能是发展和更新。
- JSR是什么大神?
它是指向JCP提出新增一个标准化技术规范的正式请求。任何人都可以提交JSR,(如果你觉得自己牛逼你也可以提交一个)
以向Java平台增添新的API和服务。JSR已成为Java界的一个重要标准。
spring boot 的话,在 spring-boot-starter-web 中已经包含了 Hibernate-validator 的依赖(版本必须是2.3之前)。2.3以后的版本 spring-boot-starter-web已经去除了这个依赖,需要手动引入 Hibernate-validator依赖
SpringBoot2.3发布说明https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.3-Release-Notes#validation-starter-no-longer-included-in-web-startershttps://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.3-Release-Notes#validation-starter-no-longer-included-in-web-starters
//被注释的元素,值必须是一个字符串,不能为null,且调用trim()后,长度必须大于0 @NotBlank(message = "") //被注释的元素,值不能为null,但可以为"空",用于基本数据类型的非空校验上,而且被其标注的字段可以使用 @size、@Max、@Min 等对字段数值进行大小的控制 @NotNull(message = "") //被注释的的元素,值不能为null,且长度必须大于0,一般用在集合类上面 @NotEmpty(message = "") //被注释的元素必须符合指定的正则表达式。 @Pattern(regexp = "", message = "") //被注释的元素的大小必须在指定的范围内。 @Size(min =, max =) //被注释的元素,值必须是一个数字,且值必须大于等于指定的最小值 @Min(value = long以内的值, message = "") //被注释的元素,值必须是一个数字,且值必须小于等于指定的最大值 @Max(value = long以内的值, message = "") //被注释的元素,值必须是一个数字,其值必须大于等于指定的最小值 @DecimalMin(value = 可以是小数, message = "") //被注释的元素,值必须是一个数字,其值必须小于等于指定的最大值 @DecimalMax(value = 可以是小数, message = "") //被注释的元素,值必须为null @Null(message = "") //被注释的元素必须是一个数字,其值必须在可接受的范围内 @Digits(integer =, fraction =) //被注释的元素,值必须为true @AssertTrue(message = "") //被注释的元素,值必须为false @AssertFalse(message = "") //被注释的元素必须是一个过去的日期 @Past(message = "") //被注释的元素必须是一个将来的日期 @Future(message = "") //被注释的元素必须是电子邮件地址 @Email(regexp = "", message = "") //被注释的元素必须在合适的范围内 @Range(min =, max =, message = "") //被注释的字符串的大小必须在指定的范围内 @Length(min =, max =, message = "")



