我正在創建一個讓用戶上傳音頻的網絡應用程序,我的問題是我應該在哪裏放置它們?我應該把它們放在Web-Content
裏面嗎?或者在WEB-INF
裏面? (我不考慮使用這些文件的數據庫,因爲大多數音頻文件是巨大的)上傳和存儲文件的最佳做法是什麼?儘可能多的,因爲我部署我的應用程序在戰爭文件中的文件將仍然存在,因爲我將這些文件的相對文件路徑存儲在數據庫中放置用戶上傳文件的位置?
回答
放置上傳的文件絕對不是一個好主意在任何級別的網絡應用程序下。 我的首選是配置路徑的配置文件。從web根目錄完全無法訪問路徑非常重要,這樣就不會在服務器上執行上載的文件。
create a text file called <webapp>.properties
含
StorePath=C:/temp/Storage/
該文本文件然後應包括在從ResourceLoader.getResource訪問的路徑下()例如classpath,WEB-INF
然後可以使用java加載屬性。
java.util.Properties props = new java.util.Properties();
java.net.URL urlx = ResourceLoader.getResource("<webapp>.properties");
props.load(urlx.openStream());
String buildVersion =props.get("StorePath").toString();
然後將文件保存到該位置。
如果您正在構建*並託管*應用程序,這將工作。在較大的項目中,託管和維護將是不同的問題。在這種情況下,我發現最簡單的方法就是保留這個解決方案的要點,但把配置放在數據庫,JNDI或系統屬性中。 – Friso
這取決於你面對的場景,這些音頻將用於什麼?然而,將資源文件放在webapp文件夾中總是一個壞主意。您可以將它們存儲在應用程序有權訪問的獨立文件夾中,或將某些遠程存儲裝載到您的計算機或某些其他分佈式文件系統(如HDFS)或甚至雲存儲產品(如Amazon S3)中。
我正在建立一個音樂網站,這些音頻文件將被流式傳輸。我會將音頻文件相對路徑存儲在數據庫中。 – user962206
在服務器存儲位置上載文件的最佳方式(服務器文件系統中的硬盤驅動器)在服務器上創建一個文件夾並上載該文件。上傳後將文件的上傳路徑放到數據庫中。
當用戶想要從數據庫中顯示文件獲取文件路徑並顯示在你的html/jsp頁面上並顯示具有合適html標籤的路徑來處理它。
喜歡顯示圖像,你會保存圖像上的目錄在服務器上存儲它的路徑在分貝假設其路徑爲www.xrv.com/images/Sunset.jpg (
絕對or
相對`)。
在JSP中使用<img src="www.xrv.com/images/Sunset.jpg"/>
- 1. 在播放框架中放置用戶上傳文件的位置?
- 2. JSP文件上傳位置
- 3. 將用戶配置文件放在窗口中的位置
- 4. Symfony2 - 我應該在哪裏放置用戶上傳的文件?
- 5. Rails:放置插件文件的位置
- 6. Node.js上傳文件的位置
- 7. 保存上傳文件的位置
- 8. Zend Framework - 放置robots.txt文件的位置?
- 9. mediaelement.js:放置文件的位置
- 10. 放置applicationcontext.xml和.hbm文件的位置?
- 11. C++中的庫文件放置位置
- 12. 放置robots.txt文件的位置?
- 13. ios放大用戶位置
- 14. 放大用戶位置
- 15. 使用apache常用文件上傳獲取上傳文件的絕對位置
- 16. 在GMap上放置位置
- 17. 將文件上傳到存儲位置
- 18. Asp.net文件上傳到共享位置
- 19. Spring MultipartFile上傳文件位置
- 20. 上傳文件對話框位置
- 21. 將robots.txt文件放置在碼頭服務器上的位置?
- 22. Autodesk Inventor將零件放置在用戶定義的位置
- 23. 漫遊用戶配置文件密碼文件的位置
- 24. django用戶配置文件設置與圖片上傳
- 25. 在響應JSON中放置當前用戶上下文數據的位置?
- 26. 如何使用Jasny文件上傳得到文件位置
- 27. cffile上傳位置
- 28. 在CakePHP文件夾結構中放置Webcron文件的位置?
- 29. 在Unixy文件系統中,傳統的軟件放置位置在哪裏?
- 30. 用戶配置文件和文件上傳
你關心,如果最終用戶可以直接訪問文件,未經您的許可? – Jazzepi
絕不會將用戶上傳的文件存儲在webapp或部署文件夾中。你可以把它放在亞馬遜s3或rackspace雲文件中。或者有一個file.repositry.path的配置並在那裏存儲文件。 – Subin
如何創建一個file.repository.path?我想輕鬆地部署我的應用程序,所以如果萬一我搬到另一個單位的文件將仍然存在 – user962206