您好,登錄后才能下訂單哦!
這篇文章主要介紹spring boot如何解決加載資源路徑配置和classpath問題,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1、spring boot默認加載文件的路徑:
/META-INF/resources/
/resources/
/static/
/public/
我們也可以從spring boot源碼也可以看到:
private static final String[] CLASSPATH_RESOURCE_LOCATIONS = { "classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/" };
2、Classpath含義
存放各種資源配置文件 eg.init.properties log4j.properties struts.xml
存放模板文件 eg.actionerror.ftl
存放class文件對應的是項目開發時的src目錄編譯文件
總結:這是一個定位資源的入口
一般java項目中 classpath存在與 WEB-INFO/目錄。
當我們需要某個class時,系統會自動在CLASSPATH里面搜索,如果是jar,就自動從jar里面查找,如果是普通的目錄,則在目錄下面按照package進行查找。
但與PATH不同的是,默認的CLASSPATH是不包含當前目錄的,這也是CLASSPATH里面要包含一個點的道理了。
Tomcat下的Web應用有兩個預置的classpath : WEB-INF/classes 和WEB-INF/lib啟動項目,項目就會加載這兩個目錄里的數據。這是war包的規范.要改變預置的classpath比較麻煩,在Tomcat的配置文件里沒有發現類似的配置,要實現自己的classloader才能達到目的。
一個在tomcat中運行的web應用.它的classpath都包括如下目錄:
我知道的有:
%tomcat%/lib
web-inf/lib
web-inf/classes
環境變量里的classpath
總結:classpath這是一個定位資源的入口.classpath下 lib的優先級大于classes;
以上是“spring boot如何解決加載資源路徑配置和classpath問題”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。