@Valid注解不加还是会做验证?

来源:2-0 表单验证

慕尼黑6008631

2018-05-09 15:48

我把

@Valid

注解去掉还是会做验证,小于18岁会抛出异常,只是

BindingResult

获取不到错误消息了,正常情况按照我的理解的话,如果不加这个注解应该不会去验证才对

@Valid
BindingResult


写回答 关注

2回答

  • likeflower950
    2018-06-30 18:48:43

    @Valid 这个是用来接收参数的时候验证的,将验证结果存入 BindingResult 结果中;

    但是,你在实体类中加的@Min、@Max等验证规则是hibernate进行数据库交互的时候需要验证的,所以,如果你在实体中加了限制,那么只有在存入数据库的时候会再次进行验证。

    所以,这个表单验证我认为存在缺陷,按道理他应该是验证你接受的数据,而不是你存入数据库的数据,因为很多情况下,接受的数据是需要经过处理才能存入数据库的,如果处理之后不符合接受时候的规则了,那么也将无法存入数据库!

  • 慕斯2569715
    2018-05-17 14:02:18

    默认应该会的

Spring Boot进阶之Web进阶

《2小时学习Spring Boot》之进阶教程,针对Web方面的相关技巧

104040 学习 · 393 问题

查看课程

相似问题