首页 > 其他分享 >@Valid注解

@Valid注解

时间:2022-09-07 12:14:06浏览次数:72  
标签:限制 String private 素材 Valid 必须 Integer 注解

分类 限制 说明
空和非空检查 @Null 限制只能为null
@NotNull 限制必须不为null
@NotEmpty 验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0)
@NotBlank 验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格
Boolean值得检查 @AssertFalse 限制必须为false
@AssertTrue 限制必须为true
长度检查 @Size(max,min) 限制字符长度必须在min到max之间
日期检查 @Past 检验日期为当期日期之前
@Future 检验日期为当期日期之后
@PastOrPresent 校验日期为当前日期或之后
数值检查 @Max(value) 限制必须为一个不大于指定值的数字
@Min(value) 限制必须为一个不小于指定值的数字
@DecimalMax(value) 限制必须为一个不大于指定值的数字
@DecimalMin(value) 限制必须为一个不小于指定值的数字
@Digits(integer,fraction) 限制必须为一个小数,且整数部分的位数不能超过integer,小数部分的位数不能超过fraction
@Negative 限制必须为负整数
@NegativeOrZero 限制必须为负整数或零
@Positive 限制必须为正整数
@PositiveOrZero 限制必须为正整数或零
其他 @Pattern(value) 限制必须符合指定的正则
@Email 限制必须为email
    /**
     * 新增图片
     * @param rquest
     * @param bindingResult
     * @return
     */
    @PostMapping("/add")
    public ResponseEntity<?> add(@RequestBody  @Valid AssetImageAndVideoResp rquest, BindingResult bindingResult){

        log.info("asset image request params >>>  {}", rquest);
        // 处理校验
        if (bindingResult.hasErrors()){
            throw new BaseException(bindingResult.getFieldError().getDefaultMessage());
        }

        AssetImageJpaEntity assetImageJpaEntity = assetImageService.add(rquest);
        if (assetImageJpaEntity.getId() != null) {
            return ResponseEntity.ok(GenericResponse.success());
        } else {
            return ResponseEntity.ok(GenericResponse.error());
        }
    }
@Data
public class AssetImageAndVideoResp {

    private int id;

    @NotBlank(message = "请输入素材url")
    private String url;  // 素材URL

    @NotBlank(message = "请输入素材名称")
    private String name; // 名称

    private Integer source; // 素材来源

    private String advertiserName; // 来源名称
    private String advertiserId; // 素材来源ID

    @Positive(message = "请输入素材宽")
    private Integer width;    // 宽

    @Positive(message = "请输入素材高")
    private Integer height;   // 高

    private String widthAndHeight; //宽高

    private Integer asceptWidth; // 宽比例

    private Integer asceptHeight; // 高比例

    @Positive(message = "请输入素材大小")
    private Long size;  // 大小


    private Integer assetImageAspectId; // 规则ID

    private Integer duration;   // 视频时长,单位:秒

    // 创建时间
    private LocalDateTime createdAt;

    // 修改时间
    private LocalDateTime updatedAt;

    // 创建人
    private String createdBy;

    // 最后一次提交人
    private String updatedBy;
}

标签:限制,String,private,素材,Valid,必须,Integer,注解
From: https://www.cnblogs.com/hefeng2014/p/16664923.html

相关文章

  • SpringBoot使用自定义注解+AOP+Redis实现接口限流
    为什么要限流系统在设计的时候,我们会有一个系统的预估容量,长时间超过系统能承受的TPS/QPS阈值,系统有可能会被压垮,最终导致整个服务不可用。为了避免这种情况,我们就需要对......
  • SpringBoot常用注解
    SpringBoot常用注解1.@SpringBootApplicationspringBoot的基石,启动类@Configuration应许spring注册额外的bean或者导入其他配置类@EnableAutoConfiguration启用Sp......
  • beego的validation表单验证库的使用
    下载beego/validationgogetgithub.com/astaxie/beego/validation直接用途packagemainimport( "fmt" "github.com/astaxie/beego/validation")typeUserstru......
  • 98.validate-binary-search-tree 验证二叉搜索树
    二叉搜索树定义:节点左子树只包含小于当前节点的数;节点右子树只包含大于当前节点的数;所有左子树和右子树自身必须也是二叉搜索树。实际上,若中序遍历二叉搜索树,所得序列......
  • Ubuntu Jenkins升级2.346.3后远程调用403解决方案(HTTP ERROR 403 No valid crumb was
       一般通过api调用Jenkinsjob出现403(HTTPERROR403Novalidcrumbwasincludedintherequest)报错,是因为新版本Jenkins为了安全,搞的一套crsf认证机制,具体的自......
  • Python-注解-类型注解
    类型注解的作用Python是动态语言,其显著特点是在声明变量时,你不需要显式声明它的类型。程序运行时会推断出变量age是int类型但是:如果你代码某些变量的类型有错,编辑器......
  • Mybatis学习笔记(六)——Mybatis注解
    注解主要分为三大类,即SQL语句映射、结果集映射和关系映射。下面分别进行讲解。不过一般注解用的比较少。1.SQL语句映射1)@Insert:实现新增功能 这个方法是在mapper接口......
  • @Component注解和@Bean注解的作用,以及两者的区别
    程序猿的我们,开发中少不了使用Spring框架,虽然天天接触它,但有时就像一句话:世界上最远的距离仿佛是头到脚~~~那你是否有知道它的内部原理呢?下面跟大家分享一下@Compoent和@Be......
  • E10——常用函数——SqlValidate
    Context.SqlValidate(“SQL语句”,参数列表,参数值列表)举例:工单单头“生产批号”字段在维护的时候校验是否存在工单状态是未生产,已发料,生产中的工单引用过该生产批号,如果......
  • Invalid Configuration – yii\base\InvalidConfigException
    原文链接:InvalidConfiguration–yii\base\InvalidConfigException–每天进步一点点(longkui.site)   0.背景搭建yii2框架时,最后一步运行phpyiiserve......