Comment stocker et récupérer des images sur un serveur Web Java : une solution
Dans cet article, nous aborderons un défi courant dans applications Web : comment stocker et récupérer efficacement des images sur un serveur Web Java. Nous fournirons une solution complète qui répond aux préoccupations soulevées dans la question d'origine.
Comprendre la requête
La question demande : où les images doivent-elles être stockées pour permettre récupération et affichage efficaces dans un fichier XHTML sur un serveur, sans utiliser la base de données comme méthode de stockage ?
La solution recommandée
La solution idéale dépend du niveau de contrôle de la configuration du serveur. Si possible, il est recommandé de configurer un chemin fixe en dehors du dossier Tomcat webapps, tel que /var/webapp/upload. Ce chemin peut être défini comme argument de VM ou variable d'environnement pour garantir une récupération par programme sans modification du code.
Implémentation de la solution
Par exemple, lors de l'utilisation de l'argument VM - Dupload.location=/var/webapp/upload, vous pouvez terminer le téléchargement comme suit :
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(); // Now store it in the DB.
Pour servir le fichier, l'ajout de l'emplacement de téléchargement en tant que contexte distinct à Tomcat est idéal. Par exemple :
<Context docBase="/var/webapp/upload" path="/uploads" />
Cette configuration permet un accès direct au fichier via des URL telles que http://example.com/uploads/foo-123456.ext.
Options alternatives
Si la configuration du serveur est limitée, envisagez d'utiliser la base de données pour le stockage ou de tirer parti d'un hôte tiers comme Amazon S3.
Ressources supplémentaires
Conclusion
La mise en œuvre de la solution recommandée fournit une approche robuste pour stocker et récupérer des images sur un serveur Web Java, permettant une gestion et un affichage efficaces des fichiers dans les interfaces d'application.
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!