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下所有環境均可以使用
         */

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章