Hibernate Validator使用记录

Hibernate Validator 是 Bean Validation 的参考实现,作用是实现数据的校验;在日常开发中,Hibernate Validator经常用来验证bean的字段,基于注解,无需编写复杂的代码,方便高效。

Hibernate Validator的依赖已经整合到了Spring-Boot-Starter-Web中,默认无需使用额外的依赖;若想自己导入依赖的话,相关信息如下

<dependency>
    <groupId>org.hibernate.validator</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>6.0.16.Final</version>
</dependency>

接着我们在实体类中针对需要进行校验的字段加上对应的注解即可,单个属性可以配合多个校验注解使用,常用的注解如下:

// Bean Validation 默认内置注解
// ------------------------------
@Null // 被注释的属性必须为null 
@NotNull // 被注释的元素必须不为 null
    
@AssertTrue // 被注释的元素必须为 true    
@AssertFalse // 被注释的元素必须为 false    

@Min(value) // 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value) // 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value) // 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value) // 被注释的元素必须是一个数字,其值必须小于等于指定的最大值

@Size(max=??, min=??) // 被注释的元素的大小必须在指定的范围内  
@Past // 被注释的元素必须是一个过去的日期    
@Future // 被注释的元素必须是一个将来的日期    
@Pattern(regex=正则表达式,message=??) // 被注释的元素必须符合指定的正则表达式 



// Hibernate Validation 额外的注解 (参数中的massage为提示信息)
// ------------------------------
@NotBlank(message = ??) // 验证字符串非null,且长度必须大于0    
@Email // 被注释的元素必须是电子邮箱地址    
@Length(min=?,max=?,message = ??) // 被注释的字符串的大小必须在指定的范围内    
@NotEmpty // 被注释的字符串的必须非空    
@Range(min=?,max=?,message=??) // 被注释的元素必须在合适的范围内 

然后可以在Controller中方法接收参数时,在需要进行校验的数据前额外加上一个@Valid注解,表示开启对该参数的校验。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容