JSR303后台数据校验

1、给实体的属性添加检验注解。import javax.validation.constraints包下,并定义自己的提示

如:@NotBlank,@URL,@NotEmpty

	 /**
	 * 品牌名
	 */
	@NotBlank(message = "品牌名必须提交")
	private String name;
	/**
	 * 品牌logo地址
	 */
	@NotEmpty
	@URL(message = "logo必须是一个合法的url地址")
	private String logo;
2、开启校验功能@Valid
3、给校验的bean后紧跟BindingResult,就可以获取到校验的结果
	/**
     * 保存
     * @Valid:开启检验注解功能
     */
    @RequestMapping("/save")
    public R save(@Valid @RequestBody BrandEntity brand, BindingResult bindingResult){
        if(bindingResult.hasErrors()){
            //校验有错误
            Map<String,String>	 map =new HashMap<>();
            //1、获取校验的错误结果
            bindingResult.getFieldErrors().forEach((item)->{
                //获取到错误提示
                String defaultMessage = item.getDefaultMessage();
                //获取错误的属性名
                String field = item.getField();
                //放到map中
                map.put(field,defaultMessage);
            });
            return R.error(400,"提交的数据不合法").put("data",map);
        }else {
            //校验没有错误没有,执行逻辑代码
            brandService.save(brand);
        }


        return R.ok();
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值