我想上傳一個文件到服務器上,使用帶有RELATIVE路徑的servlet。每當我上傳一個文件時,它應該上傳到我的項目的主目錄下的一個文件夾中。我不想使用絕對路徑,並且該路徑必須保存到數據庫中。上傳服務器上的文件,而不使用相對路徑
0
A
回答
0
在servlet中可以找到類似下面的類路徑中的某些資源的路徑。
URL url = this.getClass().getClassLoader().getResource("someFile.properties");
String pathToFile = url.getPath();
從'pathToFile'變量中,您可以找到項目主目錄的根目錄。然後,您可以將上傳的文件保存到該目錄。請注意,如果您將項目部署爲war文件,則可能無法執行(因爲您無法寫入war文件)。但是如果以爆炸方式部署它,它將始終有效。
if pathToFile = C:/someFolder/yourProject/WEB-INF/classes/someFile.properties。您可以推斷出您的主目錄是C:/ someFolder/yourProject,因爲/WEB-INF/classes/someFile.properties部分將始終是相同的
1
您可以使用servlet API的getRealPath()來獲取實際的物理路徑上下文根,您可以將上傳的文件保存在那裏。
相關問題
- 1. 上傳ftp服務器上的文件時,路徑不選擇
- 2. 在hostgator服務器上使用Codeigniter上傳類時的文件路徑invlalid
- 3. CasperJS從URL而不是服務器路徑上傳圖片
- 4. 不同服務器上的相對路徑
- 5. .m4a文件不上傳,而上傳到服務器
- 6. 相對路徑不能在apache2 web服務器上工作
- 7. 如何在selenium webdriver中使用相對路徑上傳文件
- 8. 如何上傳文件使用相對路徑
- 9. Selenium webdriver使用相對路徑上傳下載文件
- 10. Wamp服務器:上傳文件的路徑
- 11. 上傳文件到服務器的特定路徑
- 12. 在網絡服務器上傳文件的路徑
- 13. 上傳文件到服務器而不使用表單?
- 14. 將文件上傳到服務器而不使用FileReference.browse()
- 15. Azure雲服務上的服務網站的相對路徑
- 16. 上傳文件到服務器外codeigniter路徑
- 17. 服務器索引文件的第一個條目上的相對路徑
- 18. Windows服務器 - PHP文件現在需要包含而不是相對路徑的絕對路徑
- 19. 使用HTTPClient在目標路徑中上傳服務器中的文件4
- 20. 檢索使用Firefox上傳文件的完整路徑(服務器端)?
- 21. 文件的本地路徑與服務器上的路徑不同
- 22. 獲取服務器上的文件的客戶端上傳路徑
- 23. 獲取上傳文件的絕對路徑,然後將其上傳到服務器上
- 24. 使用[defaultSession uploadTaskWithRequest:request fromFile:fileURL]上傳的文件;不在服務器端上傳文件
- 25. Django文件上傳使用路徑
- 26. 爲什麼我的.htaccess文件重定向到完整的服務器路徑而不是相對路徑?
- 27. 上傳到服務器上的圖像的存儲路徑
- 28. Apache服務器上的遠程機器的相對路徑不佳
- 29. 服務器上的文件上傳
- 30. php:上傳服務器上的文件