• 【Spring/Assert】在Maven项目中使用org.springframework.util.Assert


    Assert绝对是一个令人眼睛一亮的类,它简洁得以单行形式就完成了对象的校验及不合规时抛出异常,具体做法如下:

            Object obj=null;
    ......
            Assert.notNull(obj, "对象不该为空而为空,故而抛出异常");

    而执行结果是:

    Exception in thread "main" java.lang.IllegalArgumentException: 对象不该为空而为空,故而抛出异常
        at org.springframework.util.Assert.notNull(Assert.java:201)
        at ufo.Test.main(Test.java:8)

    这种做法显然比常规的判空抛异常简便,又比Optional实用。

    Assert类的常用方法还有

    Assert.hasText(String text, "text must not be empty") text 不为null且必须至少包含一个非空格的字符 
    Assert.hasLength(String text, "text must be specified") 字符不为null且字符长度不为0
    Assert.notEmpty(Collection collection, "collection must not be empty") 集合非空
    Assert.isTrue(boolean value, "value must be true") 对象必须为true
    Assert.isInstanceOf(Class type, Object obj, String message) 如果 obj 不能被正确造型为 clazz 指定的类将抛出异常
       

    其余请大家补充。

    这个类全路径名是org.springframework.util.Assert,它在我的机器上位于spring-core-5.3.9.jar包中,即spring-core-[version].jar中。

    要使用这个类,对于必然引入spring-core包的SpringBoot/SpringCloud程序来说,直接使用即可,但对于Maven工程,就需要引入spring-core的依赖了。

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.hy</groupId>
      <artifactId>ufo</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      
          <dependencies>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-core</artifactId>
                <version>5.3.9</version>
            </dependency>

    ... </dependencies> </project>

    我是怎么找到这个位置的呢?我是先找到本机上的.m2路径(C:Usersufo.m2),然后找到repository目录,再找到org目录,在找到springframework目录,再找到spring-core目录,最后确定 5.3.9 目录,发现spring-core-5.3.9.jar就在其中。全路径是:C:Usersufo.m2 epositoryorgspringframeworkspring-core5.3.9

    最后,5.3.9填到version节点里,spring-core填到artifactId里,org.springframework填到groupId里。

    我们可以发现,对于.ms/repository里面的jar包,有着这样的对应关系:

    倒数第一层目录 version
    倒数第二层目录 artifactId
    repository到倒数第三层中间的路径 groupId

    最后,有了

            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-core</artifactId>
                <version>5.3.9</version>
            </dependency>

    这个依赖,Maven工程就能愉快的使用Assert类了。

    END

  • 相关阅读:
    git 查看、创建、切换、删除、重命名和推送分支
    Java 构造器或构造方法
    Java 二维数组
    Java 引用类型数组
    Java this关键字
    STM8S103 PB4和PB5
    RK3288 dts文件中背光配置参数
    Laravel Cache 缓存钉钉微应用的 Access Token
    Laravel View Composer
    Laravel Cache 的缓存文件在到期后是否会自动删除
  • 原文地址:https://www.cnblogs.com/heyang78/p/15345242.html
Copyright © 2020-2023  润新知