zoukankan      html  css  js  c++  java
  • @NotEmpty、@NotBlank、@NotNull的区别

    @NotEmpty 用在集合类上面 
    @NotBlank 用在String上面 
    @NotNull 用在基本类型上



    只有简单的结果,但是再更具体一点的内容就搜不到了,所以去看了看源码,发现了如下的注释:

    1. @NotEmpty

    /** 
    * Asserts that the annotated string, collection, map or array is not {@code null} or empty. 

    * @author Emmanuel Bernard 
    * @author Hardy Ferentschik 
    */

    也就是说,加了@NotEmpty的String类、Collection、Map、数组,是不能为null或者长度为0的(String、Collection、Map的isEmpty()方法)。

    2. @NotBlank

    /** 
    * Validate that the annotated string is not {@code null} or empty. 
    * The difference to {@code NotEmpty} is that trailing whitespaces are getting ignored. 

    * @author Hardy Ferentschik 
    */

    “The difference to {@code NotEmpty} is that trailing whitespaces are getting ignored.” –> 和{@code NotEmpty}不同的是,尾部空格被忽略,也就是说,纯空格的String也是不符合规则的。所以才会说@NotBlank用于String。

    3. @NotNull

    /** 
    * The annotated element must not be {@code null}. 
    * Accepts any type. 

    * @author Emmanuel Bernard 
    */

    这个就很好理解了,不能为null。

  • 相关阅读:
    js截取字符串区分汉字字母代码
    List 去处自定义重复对象方法
    63. Unique Paths II
    62. Unique Paths
    388. Longest Absolute File Path
    41. First Missing Positive
    140. Word Break II
    139. Word Break
    239. Sliding Window Maximum
    5. Longest Palindromic Substring
  • 原文地址:https://www.cnblogs.com/alter888/p/8931911.html
Copyright © 2011-2022 走看看