2011-12-23 45 views
1

在我使用primefaces + SpringWebflow的web應用程序中。我需要添加一張掃描或上傳到每個註冊客戶的圖片。我想不出有什麼好的解決方案來存儲這些文件。標準就是這樣。 我只希望應用程序能夠訪問文件,並且不應該可以直接訪問這些圖像。 我試圖將文件存儲在數據庫中,但那不是個好主意。我將路徑存儲在數據庫中。 我想有文件的相對路徑。並高效地訪問該文件。在java中上傳和存儲圖像的Java解決方案

回答

1

只需將文件存儲在數據庫中。如果您嘗試將它們放在其他地方,將您的應用程序從一臺服務器遷移到另一臺服務器會很困難,因爲它的數據將分佈在多個來源中。升級將更加困難。

如果性能/數據庫大小成爲問題,請重新審視此決定,但要確保始終測量而不是猜測性能。

+0

問題不在表現。 我有一個掃描解決方案,我從URL讀取文件。當我讀取字節並將其存儲到數據庫時,文件有時會受到影響。 另一個問題是,當我想要顯示圖像時,我需要從數據庫中讀取字節並將其存儲在磁盤上,然後將其顯示出來。這並不總是一個簡單的解決方案。 Primefaces具有顯示來自bean的文件的功能,但它在Spring webflow中不起作用。 另一個問題是當我將數據庫備份到SQL。字節在sql文件中看起來不太好。 – mettok 2011-12-23 10:30:51

+0

你能否用更具體的細節更新這個問題? – artbristol 2011-12-23 10:31:50

+0

如果我將圖像存儲到數據庫然後當我想要檢索並顯示它。我需要將它讀到一個臨時文件並顯示它。有沒有更好的解決方案? – mettok 2011-12-23 10:46:37

1

爲什麼將文件存儲在數據庫中不是一個好主意? 在集羣服務器環境中部署應用程序時會發生什麼?在集羣服務器環境中,將文件系統上的圖像保存起來的解決方案將無法工作。 您需要考慮更多關於在DB中保存圖像存儲的想法。只需調查在數據庫中存儲/檢索圖像時性能如何。嘗試不同類型的存儲框架,如nosql DB。從本質上講,你不能在我認爲的中心位置存儲數據。

+0

有沒有比檢索到文件系統的圖像更好的解決方案,並顯示它? – mettok 2011-12-23 10:44:24