首頁 >資料庫 >mysql教程 >如何在 Java Web 應用程式中有效率地儲存和檢索影像?

如何在 Java Web 應用程式中有效率地儲存和檢索影像?

Linda Hamilton
Linda Hamilton原創
2024-12-01 16:18:11659瀏覽

How to Efficiently Store and Retrieve Images in a Java Web Application?

在Java Web 應用程式中儲存並擷取影像

將影像儲存到伺服器

將影像儲存到伺服器,指定Tomcat webapps 資料夾之外的固定路徑。例如,如果您在「/var/webapp/」建立一個名為「upload」的資料夾,則可以設定為虛擬機器參數(-Dupload.location=/var/webapp/upload)或環境變數。

使用此路徑,完成如下上傳過程:

Path folder = Paths.get(System.getProperty("upload.location"));
String filename = FilenameUtils.getBaseName(uploadedFile.getName());
String extension = FilenameUtils.getExtension(uploadedFile.getName());
Path file = Files.createTempFile(folder, filename + "-","." + extension);

try (InputStream input = uploadedFile.getInputStream()) {
    Files.copy(input, file, StandardCopyOption.REPLACE_EXISTING);
}

String uploadedFileName = file.getFileName().toString();
// Store it in DB

從伺服器

檢索影像的理想方法是將上傳位置作為單獨的上下文新增至Tomcat :

<Context docBase="/var/webapp/upload" path="/uploads" />

這允許通過這樣的URL直接存取映像如http://example.com/uploads/foo-123456.ext.

如果伺服器設定控制有限,請考慮將映像儲存在資料庫中或使用Amazon S3 等第三方主機。

其他資源:

  • [File.getAbsolutePath()與File.getPath()](https://stackoverflow.com/questions/3693101/java-file-getabsolutepath-vs-getpath)
  • [可靠的資料服務](https://tomcat.apache .org /tomcat-8.5-doc/config/context.html#Reliable_data_serving)

以上是如何在 Java Web 應用程式中有效率地儲存和檢索影像?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn