BindingResult后端校验@NotNull,@NotEmpty......

1、实体类注解

@Null

@NotNull

@NotBlank,用于字符串的非空判断,自动去除首尾空格

@NotEmpty

@AssertFalse

@AssertTure

@Size(min=下限, max=上限)

@Length(min=下限, max=上限),只能字符串

@Past,日期验证,比当前日期早

@Future

@MIN(value=值)

@MAX(value=值)

@DecimalMin(value=值)

@DecimalMax(value=值)

@Digits(integer=整数位数, fraction=小数位数)

@Range(min=最小值, max=最大值)

@Valid

@Pattern(regexp=正则表达式,flag=标志的模式),用于String,用于Integer时报错且所有校验失效

@Email(regexp=正则表达式,flag=标志的模式)

@CreditCardNumber,信用卡

@ScriptAssert(lang= ,script=)

2、使用

实体类

@NotEmpty(message = "请填写活动名称")
    private String name;

Controller层,注意实体类之前加@Valid注解

复制代码
public ResResult addActiPoints(@Valid ActivitiesPointsEntity activitiesPointsEntity, BindingResult bindingResult){

        if (bindingResult.hasErrors()){
            String defaultMessage = bindingResult.getFieldError().getDefaultMessage();
            return ResResult.error(500,defaultMessage);
        }
        activitiesPointsService.addActiPoints(activitiesPointsEntity);
        return ResResult.ok(ResResult.CODE_SUCCESS);
    }
复制代码

 

posted @   95杰少  阅读(154)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示