只为讲透参数合法性验证
然后写一个统一异常拦截器,对抛异常的程序进行处理。 这种做法比较直观,如果当前参数既要判断是否为空,又要判断长度是否超过最大长度的时候,代码就显得有点多了!
于是,程序界的大佬想到了一个更加优雅又能节省代码的方式,创建一个断言类工具类,专门用来判断参数的是否合法,如果不合法,就抛异常! 很清晰的看到,已经生效! 3.5、手动进行注解校验 某些时候呢,假如有100个类需要用到校验注解,此时我们可能在每个类会加上注解@Validated或者@Valid,再增加100个这样的类,就会造成很多大量的重复工作。 而此时,我们的诉求是想对有校验注解的实体类进行全局参数验证! 解决办法就会用到Validator提供的手动注解校验证工具类,实现方法如下!
方法参数解析器只针对接口请求时入参进行验证,如果想对任何组件中方法进行注解校验,似乎还缺了点什么! 而当需要对一个类中的方法参数使用注解校验时,在类上加上@Validated就是为了告诉Spring去校验方法参数!
底层核心是通过切面代理类并配合MethodValidationPostProcessor这个后置处理器进行处理! (编辑:衡水站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |