• Class.getResource和ClassLoader.getResource的区别


    项目结构
    ┌─src
    │ └─main
    │ └─java
    │ └─com.guitu18.blog
    │ ├─doudou
    │ │ └─GetResourceTest.java
    │ └─SpringbootApplication.java
    └─resource
    ├─mapper
    │ └─BlogDao.xml
    └─confog.properties


    1、Class.getResource()可以从当前 Class 所在包的路径开始匹配获取资源,也可以从 classpath 根路径开始匹配获取资源


    1.1、Class.getResource()从当前包所在路径获取资源时不能以"/"开头// file:/E:/repo/guitu-blog/target/test-classes/com/guitu18/blog/doudou/

    System.out.println(this.getClass().getResource(""));


    1.2、而从 classpath 根路径获取资源时必须以"/"开头;
    // file:/E:/repo/guitu-blog/target/test-classes/
    System.out.println(this.getClass().getResource("/"));


    2、ClassLoader().getResource()只能从 classpath 根路径开始匹配获取资源

      2.1、ClassLoader().getResource()不能以"/"开头,且路径总是从 classpath 根路径开始;
         // file:/E:/repo/guitu-blog/target/test-classes/
       System.out.println(this.getClass().getClassLoader().getResource(""));
       // null
       System.out.println(this.getClass().getClassLoader().getResource("/"));


  • 相关阅读:
    vijos1746 floyd
    总结
    用javascript代码拼html
    异步编程学习
    SELECT
    设计 Azure SQL 数据库,并使用 C# 和 ADO.NET 进行连接
    H2数据库
    ASP.NET 文档
    ASP.NET MVC
    ASP.NET Core 中的 Razor 页面介绍
  • 原文地址:https://www.cnblogs.com/cndou/p/14918958.html
Copyright © 2020-2023  润新知