JSR303实现数据验证

定义:JSR-303 是JAVA EE 6 中的一项子规范,叫做Bean Validation,现在一共有两个规范:BeanValidation1.0(即JSR303)和 BeanValidation1.1(即JSR349),主要用于对数据进行校验,确保输入进来的数据从语 义上来讲是正确的。


特点:1.JSR 303 用于对Java Bean 中的字段的值进行验证,使得验证逻辑从业务代码中脱离出来。

          2.是一个运行时的数据验证框架,在验证之后验证的错误信息会被马上返回。


应用场景:一般用于表单提交页面(如用户名必填、只能由数字字母组成等等)

使用步骤:

    1.spring并没有提供JSR303的实现,需要导入JSR303的jar包

            jsr303的jar包可以到以下地址进行下载,下载好后加入到项目的WEB-INF的lib目录下即可:

            下载传送门:https://download.csdn.net/download/qq_32631613/10338317

    2.指定的pojo类中,给相应的字段的属性加入JSR303验证对注解即可,如下图:

            

            此处@Past即为对于birth属性进行是否为过去时间的一个验证,如果不是在运行时会报错。

            此处仅举例说明如何使用jsr303,并不详细介绍各种验证注解的具体使用。

    3.需要在spring容器中配置LocalValidatorFactoryBean,并且在中指定validator      

   
    4.需要给方法的入参(需要进行验证)加上@Valid注解:
public String testFormat( @Valid User user){}

你可能感兴趣的:(java)