在开发中,为了代码的稳定性不报空指针异常,经常需要判断前端传过来的值是否为空,为空的话就返回前端值为空的提示,才能进行下一步的操作。这样的话,在每次需要验证的时候,都需要判断一遍,如果参数有十多个,那岂不是要判断写十多个判断,这样不仅加大了自己的开发工作,也让代码变得冗余,@NotNull注解就很好的解决了这个问题。
Controller层:
加@Valid注解 ,,表示当前的实体类接收的参数需要根据配置的@NotNull注解判断
@NotNull是对整个对象的非空判断
实体类:
实体类需要判断的字段上面加上@NotNull注解,并且message配置提示语句
说明:
@NotEmpty 用在集合类上面
加了@NotEmpty的String类、Collection、Map、数组,是不能为null或者长度为0的(String Collection Map的isEmpty()方法)
@NotBlank只用于String,不能为null且trim()之后size>0
@NotNull:不能为null,但可以为empty,没有Size的约束,与@NotEmpty注解相比是少了size属性,所以"Accepts any type"可以接受任何类型对象
@Valid 和 @Validated的区别:
https://blog.csdn.net/qq_33274797/article/details/109060226