一些没用的小技巧,第1张

写代码其实有很多小技巧,熟练运用可以写出更加优雅健壮的代码,下面就介绍几个。

一、表单验证

controller层接收请求参数,对有些参数我们需要进行校验,比如校验某个字段的格式、校验某个字段不能为空等。常规做法是写if判断,当字段校验不通过就抛出异常。不过使用表单验证,可以让代码更加优雅。下面是伪代码:

@Data
public class UserDto {
    @NotBlank(message = "name不能为空")
    private String name;
    @NotNull(message = "age不能为空")
    @Min(value = 1, message = "年龄不能小于1")
    private Integer age;
}

直接在接收参数的对象字段上加上相关注解,然后在controller层中获取校验结果:

@PostMapping("/register")
public String register(@Valid UserDto userDto, BindingResult bindingResult){
    // 校验参数
    checkParams(bindingResult);
    // 业务逻辑
    return "";
}

private void checkParams(BindingResult bindingResult) {
    if (bindingResult.hasErrors()){
        List<ObjectError> allErrors = bindingResult.getAllErrors();
        String errorMsg = allErrors.stream().map(ObjectError::getDefaultMessage).collect(Collectors.joining(";"));
        if (StringUtils.isNotBlank(errorMsg)){
            throw new BusinessException(BusinessExceptionEnum.bad_request_param.getCode(), errorMsg);
        }
    }
}

附上常用的校验注解:

注解说明
@Null
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 一些没用的小技巧

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情