SpringBoot使用HibernateValidation校验框架

        对某个多字段的实体进行验证的话,会写很多麻烦而且冗余的代码

一、在业务逻辑层验证:

        我们可能都熟悉在Controller层进行参数验证,在业务逻辑层进行验证可能使用不多,在我写外放机构交易接口的时候遇到一个问题,首先来说说我这个接口的设计,我的接口请求路径只有一个,但是可以处理不同的业务,根据机构传递的业务码判断业务类型,进行不同处理,机构请求这个接口,在Controller层首先会进行数据校验,但是校验的仅仅是暴露的不影响数据安全的数据,校验通过我需要将加密字段中的参数取出,根据机构私钥进行解密,获取到数据,但是这些数据你还要进行校验是否合法,这就需要在业务逻辑层进行验证

(1)、首先定义一个实体对象,在参数上使用验证注解

(2)、在业务层接口中的方法参数上使用@Valid注解

(3)、在接口实现类添加@Validation注解

(4)、捕获全局ConstraintViolationException异常

(5)、Controller方法上并为添加@Valid注解

请求测试:

建议以后将数据验证全部放到业务层。

博客原文地址:SpringBoot使用HibernateValidation校验框架

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

推荐阅读更多精彩内容