淺談Java工程讀取resources中資源文件路徑的問題
正常在Java工程中讀取某路徑下的文件時(shí),可以采用絕對(duì)路徑和相對(duì)路徑,絕對(duì)路徑?jīng)]什么好說的,相對(duì)路徑,即相對(duì)于當(dāng)前類的路徑。在本地工程和服務(wù)器中讀取文件的方式有所不同,以下圖配置文件為例。

本地讀取資源文件
java類中需要讀取properties中的配置文件,可以采用文件(File)方式進(jìn)行讀取:
File file = new File("src/main/resources/properties/basecom.properties");
InputStream in = new FileInputStream(file);
當(dāng)在eclipse中運(yùn)行(不部署到服務(wù)器上),可以讀取到文件。
服務(wù)器(Tomcat)讀取資源文件
當(dāng)工程部署到Tomcat中時(shí),按照上邊方式,則會(huì)出現(xiàn)找不到該文件路徑的異常。經(jīng)搜索資料知道,Java工程打包部署到Tomcat中時(shí),properties的路徑變到頂層(classes下):

并且,此時(shí)讀取文件需要采用流(stream)的方式讀取,如下:
InputStream in = this.getClass().getResourceAsStream("/properties/basecom.properties");
其中properties前的斜杠,相對(duì)于調(diào)用類,共同的頂層路徑。
以上這篇淺談Java工程讀取resources中資源文件路徑的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Jenkins+maven持續(xù)集成的實(shí)現(xiàn)
這篇文章主要介紹了Jenkins+maven持續(xù)集成的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
使用Mybatis的Batch?Insert?Support?實(shí)現(xiàn)批量插入
這篇文章主要介紹了使用Mybatis的Batch?Insert?Support?實(shí)現(xiàn)批量插入。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
Jpa中Specification的求和sum不生效原理分析
這篇文章主要為大家介紹了Jpa中Specification的求和sum不生效原理示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
一篇超詳細(xì)的SpringBoot整合MybatisPlus的文章
這篇文章主要介紹了springboot整合Mybatis-plus的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07

