前言
在日常的开发中,服务端对象的校验是非常重要的一个环节,比如用户注册的时候:校验用户名,密码,身份证,邮箱等信息是否为空,以及格式是否正确,但是这种在日常的开发中进行校验太繁琐了,代码繁琐而且很多。Validator框架应运而生,它的出现就是为了解决开发人员在开发的时候减少代码的,提升开发效率。它专门用来做接口的参数校验,比如:密码长度、是否为空等等。
概述
JSR303
定义了 Bean Validation
(校验)的标准 validation-api
,但并没有提供实现。Hibernate Validation
是对这个规范的实现 ,并且增加了 @Email
、@Length
、@Range
等注解。Spring Validation
底层依赖的就是Hibernate Validation
。
JSR303:JSR303是一项标准,只提供规范不提供实现。定义了校验规范即校验注解如:@Null、@NotNull、@Pattern。位于:javax.validation.constraints
包下。
hibernate validation:是对 JSR303 规范的实现并且进行了增强和扩展。并增加了注解:@Email、@Length、@Range等。
**spring Validation: ** 是对Hibernate Validation的二次封装。在SpringMvc模块中添加了自动校验。并将校验信息封装到特定的类中。