2011-01-07 65 views
0

上傳顯示文件,我需要在Web應用程序中顯示上傳的文件,該流程如下Java的Web應用程序 - 由用戶

  1. 用戶上傳的內容通過Web UI文件
  2. 驗證圖像
  3. 使呼叫imageRepository.store(uploadedImage, user.getSite())
  4. 用戶想要顯示的圖像,其增加了<img src="${anUploadedImage.getUrl()}"/>

但是這就是我卡住了,有什麼可以getUrl()辦?簡單的解決辦法是把它的某個地方,讓Apache處理的文件,但我不能使用的應用程序,以確保一個用戶沒有修改URL查看其他用戶的文件,在這種情況下是非常重要的

回答

0

如果要管理文件的路徑,您有幾個選項。

  1. 您可以創建一個服務來按ID返回文件。本質上,這個控制器操作(或servlet)會從存儲庫中加載圖像並將其序列化回用戶。這提供了最大的控制。
  2. 您可以創建執行您想要的控制過濾器,然後委託回網絡服務器執行服務的實際文件。這仍然可以讓你控制,但負責您的應用程序有效地序列化文件。

有一件事我會想驗證(因爲我不知道該${anUploadedImage}是什麼類型)爲getUrl()將返回什麼URL。如果是File對象,然後getUrl()提供文件的URL這是在HTML沒用。本質上,網絡瀏覽器會查看用戶的驅動器或報告某種可疑活動。

在你的HTML您加入的網址需要指向到您的服務將發送所需的圖像。