手把手写一个基于Spring Boot框架下的参数校验组件(JSR-303)

        之前参与的新开放平台研发的过程中,由于不同的接口需要对不同的入参进行校验,这就涉及到通用参数的校验封装,如果不进行封装,那么写出来的校验代码将会风格不统一、校验工具类不一致、维护风险高等其它因素,于是我对其公共的校验做了一个封装,达到了通过注解的方式即可实现参数统一校验。

遇到的问题

                      在封装的时候就发现了一个问题,我们是开放平台,返回的报文都必须是统一风格,也就是类似于{code:999,msg:"参数校验失败",data:null} 这种,但是原生的JSR303并不支持自定义的字段,所以需要自定义校验注解。针对这个问题我参考一些JSR303的资料,对其进行了一个定制扩展,以达到开发人员不需要关注捕捉和封装返回信息。

  

传统的校验做法 

        如下校验如果一个实体里面上百个字段需要校验的话,对于维护起来是一个很麻烦的事情,而且很多校验可以通过jsr-303的注解方式统一处理,无需写一大堆if和else

if(name == null) { //返回错误信息 }else if(age == null) { //返回错误信息 }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgwyfj.html