SpringBoot使用@Valid玩转参数校验

一、说明

参数校验是开发中必不可少的一环,很多时候一些异常都是由没有进行参数校验引起的空指针异常。如果是前端直接传递过来的参数,通过@Valid注解能够很便捷的验证这些参数

二、使用

如果是spring-boot-starter 自带validation所以不需要另外的依赖了

直接在VO代码中加入Vaild注解

@Data
public class RapperBaseVO {

    @NotBlank(message = "名字不能为空")
    private String Name;

    @Min(value = 18,message = "未满18不能当rapper")
    private Integer age;

    @NotEmpty(message = "必须有专辑")
    private List<String> CDList;

    @NotNull(message = "代表作不能为空")
    @Size(min = 1,max = 50)         //限制字段长度 防止插入数据库直接报错
    private String masterWork;
}

接来下在Controller层写一个接口 并加上@Vaild在方法参数前面,在Service也同样适用

@RequestMapping("/music")
@RestController
@Validated
public class RapperController {
    @PostMapping("/addRapper")
    public String addRapper(@Valid RapperBaseVO createVO) {
        System.out.println(createVO);
        //执行业务代码 ....
        return createVO.toString();
    }
}

接下来用Foxapi模拟一下参数验证效果

 看到Vaild在VO上添加的注解已经生效了

三、Vaild常用的验证注解和说明

@NotNull:判断参数是否为空

@NotBlank:判断是否为空字符串(String类型推荐用这个而不是NotNull)

@Max、@Min:Integer类型判断最大值或最小值

@NotEmpty:判断是否为空集合

@Size:判断对象的长度


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值