簡體   English   中英

將文件上傳到Spark Java

[英]Upload file to Spark Java

我正在嘗試創建一個包含上載文件的文件夾。 我已經看到了一些將文件保存到絕對文件夾(例如D:/ tmp或主目錄)的示例。 我的問題是我試圖將上傳的文件放入項目文件夾中的文件夾中。 上載文件夾應包含上載的文件

我也試圖使用這樣的項目文件夾:

    public static String getProjectFolder(){
         return System.getProperty("user.dir")+"/";
    }

結果變成這樣的東西,並且在HTML文件中找不到文件異常!

http:// localhost:1234 / Users / USER_NAME / Documents / java / PROJECT_NAME / upload / genres / action.jpg

將文件夾添加到項目中的最佳方法是什么? 還是應該使用硬編碼文件夾?

您需要使用staticFiles.externalLocation()將要上傳文件的文件夾設置為靜態文件文件夾

客戶端可以訪問的唯一文件夾(用於從中獲取內容或上傳內容)是使用靜態文件位置API staticFiles.externalLocation()設置的文件夾。 您還可以在此處查看示例。

在本地運行服務器時,將其定義為:

staticFiles.externalLocation(System.getProperty("user.dir") + "/src/main/resources");

這是關於您的問題。


您可能會遇到問題。 因為現在您可能有兩個要公開的位置:

  • 資源文件夾(包含所有JavaScript,CSS等。通常為/src/main/resources
  • 上載文件夾(讓用戶上載文件)

將這兩個位置都放在同一位置並不是一個好習慣。 我設法通過在公用文件夾內創建一個稱為files的符號鏈接來解決該問題。

abcmbp:resources abc$ pwd
/Users/abc/dev/wspace/proj1/src/main/resources

abcmbp:resources abc$ ls -l files
lrwxr-xr-x  1 abc  staff  27 Mar  3 21:20 files -> /Users/abc/appUploadFolder/

然后,在上載路徑的發布句柄中,我將此文件夾指定為目的地,這樣我就可以將資源和上載的文件分開。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM