Maison > base de données > tutoriel mysql > le corps du texte

Comment stocker et récupérer des images dans une application Web Java sans utiliser de base de données ?

Linda Hamilton
Libérer: 2024-11-18 21:40:02
original
972 Les gens l'ont consulté

How to Store and Retrieve Images in a Java Web App Without Using a Database?

Stockage et récupération d'images dans une application Web Java

Question :

Comment puis-je stocker et récupérer une image sur une serveur dans une application Web Java sans le stocker dans un base de données ?

Réponse :

L'emplacement optimal pour le stockage des images dépend de la configuration du serveur.

Emplacement de stockage idéal :

Configurez un chemin fixe en dehors du répertoire de l'application Web, tel que /var/webapp/upload, comme argument de VM ou variable d'environnement. Ce chemin peut être récupéré par programme. Par exemple, en utilisant l'argument -Dupload.location=/var/webapp/upload VM :

Path folder = Paths.get(System.getProperty("upload.location"));
Copier après la connexion

Exemple de code de stockage et de récupération :

En supposant l'existence de un fichier téléchargé représentant le image :

Stockage :

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();
// Save uploadedFileName in database
Copier après la connexion

Récupération :

Ajoutez l'emplacement de téléchargement en tant que contexte distinct à Tomcat :

<Context docBase="/var/webapp/upload" path="/uploads" />
Copier après la connexion

Désormais, l'image est accessible directement via une URL comme :

http://example.com/uploads/foo-123456.ext
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal