zoukankan      html  css  js  c++  java
  • SpringBoot通过Hibernate验证前端数据

    使用Hibernate验证时,需要存在实体类

    以Person为例

    @Valid 声明需要验证的对象  @Valid Person

    BindingResult result 获取返回的错误

    public class Person{

      @NotBlank(message ="姓名不能为空")

      private String name;

      @DecimalMin(1)

      private String age;

      @Email

      private String email;

    }

    判断是否验证成功

    if(result.hasErrors()){

    Map<String, String> map = new HashMap<>();
    List<FieldError> fieldErrors = result.getFieldErrors();
    for (FieldError fieldError : fieldErrors) {
    String error = fieldError.getField();
    String msg = fieldError.getDefaultMessage();
    map.put(error,msg);
    }

     system.out.print(map);  

    }

    常用注解:

      @Null  被注解的属性必须为空

      @NotNull  被注解的元素必须不为空

      @AssertTrue 被注解的元素必须为true

      @AssertFalse 被注解的元素必须为false

      @Min(value)  被注解的元素必须是数字,且大于等于最小值

      @Max(value)  被注解的元素必须是数字,且小于等于最大值

      @DecimalMin(value)  被注解的元素必须是数字,且大于等于最小值

      @DecimalMax(value)  被注解的元素必须是数字,且小于等于最大值

      @Size(max=,min=)  被注解的元素必须是数字,且在指定范围内

      @Digits (integer, fraction) 被注释的元素必须是一个数字,其值必须在可接受的范围内

      @Past  被注释的元素必须是一个过去的日期

      @Futrue  备注是的元素必须是一个将来的日期

      @Pattern(regex=,flag=) 被注释的元素必须符合指定的正则表达式

      @Email 被注释的元素必须是电子邮箱地址

      @NotEmpty 被注释的字符串的必须非空

      @Length(value) 被注释的字符串长度限制

      @Range(min=,max=,message=) 被注释的元素必须在合适的范围内

      @NotBlank(message =) 验证字符串非null,且长度必须大于0

    谢谢!

  • 相关阅读:
    Redis设计与实现第一部分:第5章:Redis 跳跃表
    根据临时表修改主表的某字段数据根据主表的主键
    Redis设计与实现第一部分:第2章:简单动态字符串SDS
    Redis
    MySQL的访问控制与用户管理
    MySQL字符集和语言的基础知识
    生成日志文件
    Python进阶09 动态类型
    Python进阶08 异常处理
    Python进阶07 函数对象
  • 原文地址:https://www.cnblogs.com/zyhzsq/p/12776518.html
Copyright © 2011-2022 走看看