java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > @Validated注解进行校验却没有效果

使用@Validated注解进行校验却没有效果的解决

作者:水巷石子

这篇文章主要介绍了使用@Validated注解进行校验却没有效果的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

场景描述

Controller层方法参数中添加了@Validated注解

对应参数的字段添加验证规则

问题描述

在页面添加属性分组时,分组ID字段的正则验证不起效果,依然可以保存中文、特殊字符等

问题定位

回看上面的代码,可以发现。

@Validated引用了分组

而对应的参数groupId并没有被分配的该组中。

解决办法

将groupId参数分配到@Validated验证组Insert.class中。

结果验证

知识点总结

@Validated校验与groups分组的关系

@Validated注解校验可以添加对应分组的参数,这样可以只取参数中对应分组的字段进行验证。

如上面的代码@Validated(Insert.class)注解参数是Insert.class分组

所以只会取参数中Insert.class分组的字段进行验证

反之,如果是@Validated(Updated.class),那么就只会取被分组到Updated.class组的字段进行验证。

当然我这里两个组中的字段都是一样的,哈哈。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文