首页 文章详情

@NotNull、@NotEmpty、@NotBlank注解使用

HappyVincent | 870 2020-11-26 13:29 0 0 0
UniSMS (合一短信)

使用场景:如前后分离的项目,前端提交表单后,后端对必填字段进行校验,可直接使用注解进行实现,下面说一下这三个注解的区别。

第一:@NotNull,使用这个注解时,属性不可以为null,但是可以为空串。

第二:@NotEmpty,使用这个注解时,属性不可以为null,且不可以为空串(长度必须大于0)。

第三:@NotBlank,这个注解只能作用在String类型的属性上,属性不可以为null,且trim()后不可以为空串(长度必须大于0)。


在dto类中使用这三个属性时,需要在对应的controller的方法上一起使用

@valid这个注解。



String testValue = null;

@NotNull            false

@NotEmpty        false

@NotBlank          false


String testValue = "";

@NotNull            true

@NotEmpty        false

@NotBlank          false


String testValue = "  ";

@NotNull            true

@NotEmpty        true

@NotBlank          false



示例代码

@Data@ApiModel(value = "AddProjectInfoDto", description = "AddProjectInfoDto")public class TestMethodDto extends {    @ApiModelProperty("项目标题")    @NotBlank(message = "项目标题:不能为空")    private String projectTitle;}
@ApiOperation(value = "测试方法")@RequestMapping(value = "/testMethod", method = RequestMethod.POST)public void testMethod(@RequestBody @Valid TestMethodDto dto) {        ...    }


good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter