• 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

    谢谢!

  • 相关阅读:
    Django-admin导出到表格
    Django1.11.4中文文档
    Django+uwsgi+nginx+angular.js项目部署
    angular.js 入门
    枚举类型的总结
    基于websocket的页面聊天程序
    java网络编程(三):一个类似QQ的聊天程序
    java网络编程(二)
    java网络编程(一)
    java中的序列化与反序列化,还包括将多个对象序列化到一个文件中
  • 原文地址:https://www.cnblogs.com/zyhzsq/p/12776518.html
Copyright © 2020-2023  润新知