我正在使用JSP和servlet構建應用程序。我正在試圖建立一個文件上傳功能。我想確保我在本地創建的文件夾結構傳輸到Apache Web服務器。有什麼辦法來達到這個目的?我有一個表單,我使用輸入文件控制爲特定文件夾提供路徑。當我提交表單時,應該在Web服務器上創建表單中所選文件夾下的任何文件和文件夾的層次結構。如果該文件夾包含任何文件,則該文件應自動傳輸到服務器。是否有可能做出這樣的功能?如何使用JSP和servlet構建目錄和文件層次結構上傳功能?
0
A
回答
0
上傳文件時,通常只會獲取文件名和文件內容。您通常也不會獲得整個客戶端磁盤文件系統路徑。只有可憐的MSIE網絡瀏覽器會因爲安全錯誤而錯誤地發送這些信息,但是您應該在/
或\
上修剪此錯誤,並最終只使用文件名,或者如果您使用的是Apache Commons FileUpload,則使用FilenameUtils#getName()
。
至於服務器端文件夾結構,只需將上傳的文件存儲在固定文件夾中的唯一名稱下。不要不必要地創建其他文件夾,除非該文件夾應該標識登錄用戶或其他東西,當然。您可以使用File#createTempFile()
根據文件名前綴和文件名後綴(擴展名)創建唯一的文件名,以避免上傳的文件重複出現相同的名稱被覆蓋。
至於服務器端的上傳文件夾位置,請確保它不在服務器文件夾結構的webapp的deploy文件夾中。每次重新部署Web應用程序時,這都會丟失,原因很簡單,即上傳後新添加/更改的文件未包含在待部署的WAR中。
至於服務文件,只需將上傳文件夾位置作爲另一個虛擬主機添加到服務器配置。目前還不清楚「Apache Web服務器」的含義,因爲Apache是一家建立許多軟件產品的龐大軟件公司。你的意思是Apache HTTPD? Apache Tomcat? Apache TomEE? Apache Geronimo?等等。當你在JSP/Servlet上下文中討論時,我將假設Apache Tomcat。然後頭到這個答案:How I save and retrieve an image on my server in a java webapp。
相關問題
- 1. 使用jsp和servlet上傳文件
- 2. 如何在目錄層次結構中輸出每個文件和文件夾
- 3. 如何使用JSP和servlet創建文件上傳器?
- 4. 在JSP上創建目錄樹結構
- 5. 使用Linq構建樹層次結構
- 6. 如何構建層次結構?
- 7. c#構建層次結構
- 8. JSP目錄結構
- 9. 如何構建用於層次結構目的的Json對象
- 10. &&和||的層次結構
- 11. Android的層次和結構
- 12. Automapper和類層次結構
- 13. Backbone.js和層次結構/樹
- 14. 如何在java servlet項目中引用更高層次結構的文件
- 15. 如何使用平面燒瓶目錄層次結構?
- 16. 如何找到使用LINQ和EF的層次結構的根目錄?
- 17. 如何創建具有各級層次結構的目錄?
- 18. 如何使用JSP和Servlet在Java中上傳文件?
- 19. 結構和功能
- 20. 結構和功能
- 21. 使用EF6構建「微軟項目」式數據層次結構
- 22. 如何使用正則表達式解析文件目錄層次結構?
- 23. 層次結構或一個目錄
- 24. 在層次目錄結構錯誤
- 25. 如何使用spyne構建REST層次結構
- 26. Swing組件和包容層次結構
- 27. tomcat 7 web.xml層次結構 - 用戶和角色 - java servlet
- 28. 如何列出GtkTreeView小部件中的目錄層次結構?
- 29. 使用Linq創建層次結構
- 30. 如何使用RPG類層次結構?