东莞腾宇科技网站建设,一键生成app制作器,房产网app,中国建筑集团有限公司官网校园招聘引言
今天在使用validation校验的时候#xff0c;发现了使用校验不起作用#xff0c;一时间有点摸不到头绪#xff0c;就看了一下同事提交的代码#xff0c;发现了问题在用NotNull用法#xff0c;用的有些错误#xff0c;所以在这里讲一下NotNull、NotBlank、NotEmpty区…引言
今天在使用validation校验的时候发现了使用校验不起作用一时间有点摸不到头绪就看了一下同事提交的代码发现了问题在用NotNull用法用的有些错误所以在这里讲一下NotNull、NotBlank、NotEmpty区别和使用。
首先先明确一下我们使用的这几个注解所在的包
javax.validation.constraints.NotNull
javax.validation.constraints.NotBlank
javax.validation.constraints.NotEmpty
通过使用这些注解来实现我们对参数的校验可以为我们节省很多不必要的重复校验代码。使我们的代码看起来很优雅。
由于这个三个注解看起来的作用有些相似很多朋友不会使用或者是用着有些混淆所以我们在这里讲解一下如何正确的使用这三个注解。
NotNUll
他基本上使用于基本数据类型Long、Integer、Double当NotNull注解作用于String类型的数据上的时候则表示改变量不能为null但可以为Empty也就是可以为
这就是上面我说的同事说他添加校验了但是我在测试的时候总是能够跳过空的校验
NotBlank
这个注解适用于String类型的数据上面添加了这个注解的变量则表示参数不能为null并且trim()之后的size0,也就是说也是不允许的。
我这里就是将同事放在了String类型的NotNull更改为了NotBlank
NotEmpty
适用于String、Collection集合、数组、Map集合等等当添加了NotEmpty注解的参数则不能为null并且长度也不能为0。
上面就是我们使用的这三个注解的具体区别还有各自的领域与含义。
并且我们在使用的时候还需要注意一点那就是在使用的时候在参数的位置需要添加上Validated,否则我们的注解也是不起作用的
今天关于NotNull 、NotBlank、NotEmpty区别和使用就介绍到这里欢迎大家留言交流
也欢迎大家关注我的公众号《coder练习生》