Springboot/Java读取文件

====工程结构图

///java属性和加载器//

  /**
         *  当测试类在 com.spt.example 下
         *  getResourceAsStream("test.txt") 会从com.spt.example包下开始找test.txt
         *  getResourceAsStream("/test.txt") 会从classpath根下开始找test.txt
         */
        this.getClass().getClassLoader().getResourceAsStream("test.txt");
        /**
         * 不在乎是否/test.txt 或者test.txt 都会从classpath根下找
         */
        ClassLoader.getSystemResourceAsStream("text.txt");

        /**
         * bootstrap classloader :负责加载JAVA核心类( jre 下lib和class目录中的内容)
         * extension classloader :负责加载JAVA扩展类(jre 下lib/ext 目录中的内容)
         * system classloader :负责加载应用指定的类 (环境变量classpath中配置的内容)
         */

 

   /**
         * bootstrap classloader :负责加载JAVA核心类( jre 下lib和class目录中的内容)
         * extension classloader :负责加载JAVA扩展类(jre 下lib/ext 目录中的内容)
         * system classloader :负责加载应用指定的类 (环境变量classpath中配置的内容)
         */


        /**
         * src/main/resources/test.txt 只能在开发工具中使用 打包和部署路径无效
         *
         * org.springframework.util.ResourceUtils linux下无法使用
         *
         * org.springframework.core.io.ClassPathResource jvm下所有环境均可以使用
         *
         * org.springframework.core.io.ResourceLoader; jvm下所有环境均可以使用
         */

 

posted @ 2020-05-23 00:12  蜜獾互联网  阅读(4)  评论(0编辑  收藏  举报  来源