第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何查找基于Servlet的應(yīng)用程序的工作文件夾以加載資源

如何查找基于Servlet的應(yīng)用程序的工作文件夾以加載資源

嗶嗶one 2019-11-04 14:33:43
我編寫了一個(gè)Java Servlet,希望將其安裝在不同服務(wù)器上的許多Tomcat實(shí)例上。Servlet使用一些靜態(tài)文件,這些文件與WEB-INF下的war文件一起打包。這是典型安裝中的目錄結(jié)構(gòu):- tomcat-- webapps--- myapp---- index.html---- WEB-INF----- web.xml----- classes------ src------- .....----- MY_STATIC_FOLDER------ file1------ file2------ file3如何知道MY_STATIC_FOLDER的絕對(duì)路徑,以便可以讀取靜態(tài)文件?我不能依靠“當(dāng)前文件夾”(我在新File(“?!保┲械玫降臇|西),因?yàn)樗Q于從哪個(gè)Tomcat服務(wù)器啟動(dòng),在每個(gè)安裝中都不同!
查看完整描述

3 回答

?
泛舟湖上清波郎朗

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊

您可以ServletContext#getRealPath()用來(lái)將相對(duì)Web內(nèi)容路徑轉(zhuǎn)換為絕對(duì)磁盤文件系統(tǒng)路徑。


String relativeWebPath = "/WEB-INF/static/file1.ext";

String absoluteDiskPath = getServletContext().getRealPath(relativeWebPath);

File file = new File(absoluteDiskPath);

InputStream input = new FileInputStream(file);

// ...

但是,如果你的唯一目的是為了得到一個(gè)InputStream出來(lái),更好的使用ServletContext#getResourceAsStream(),而不是作為getRealPath()可能返回null每當(dāng)戰(zhàn)爭(zhēng)不是擴(kuò)大本地磁盤上的文件系統(tǒng)(Tomcat的默認(rèn)完成,但可配置,不這樣做?。?/p>


String relativeWebPath = "/WEB-INF/static/file1.ext";

InputStream input = getServletContext().getResourceAsStream(relativeWebPath);

// ...

畢竟,這比該java.io.File方法更健壯。


查看完整回答
反對(duì) 回復(fù) 2019-11-04
?
慕無(wú)忌1623718

TA貢獻(xiàn)1744條經(jīng)驗(yàn) 獲得超4個(gè)贊

你可以試試這個(gè)


String relativeWebPath = "WEB-INF/static/file1.ext";


InputStream input = getServletContext().getResourceAsStream(relativeWebPath);


查看完整回答
反對(duì) 回復(fù) 2019-11-04
?
慕容708150

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超4個(gè)贊

我更喜歡使用getResourceaAsStream選項(xiàng)基于父目錄加載資源。


getClass().getClassLoader().getResourceAsStream("/MY_STATIC_FOLDER/file1");


查看完整回答
反對(duì) 回復(fù) 2019-11-04
  • 3 回答
  • 0 關(guān)注
  • 454 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)