Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 如何从上载图像的文件夹下载图像?_Image_Jsp_Servlets_File Upload_Download - Fatal编程技术网

Image 如何从上载图像的文件夹下载图像?

Image 如何从上载图像的文件夹下载图像?,image,jsp,servlets,file-upload,download,Image,Jsp,Servlets,File Upload,Download,我正在创建一个项目,用户可以上传他的照片。此照片存储在文件夹“images/uploads/filename”中。当创建他的个人资料并显示照片时,我使用作为“images/uploads/filename”,但照片不会显示。 如果我手动将照片复制到相邻的文件夹“images/abc/filename”中,然后将其用作源,那么它就工作了 这是如何造成的,我如何解决?我需要使用相同的文件夹上载和下载照片。确保您的文件夹路径正确,并且包含图像扩展名 为了进行测试,请将img标记放在index.php中

我正在创建一个项目,用户可以上传他的照片。此照片存储在文件夹“images/uploads/filename”中。当创建他的个人资料并显示照片时,我使用
作为“images/uploads/filename”,但照片不会显示。
如果我手动将照片复制到相邻的文件夹“images/abc/filename”中,然后将其用作源,那么它就工作了


这是如何造成的,我如何解决?我需要使用相同的文件夹上载和下载照片。

确保您的文件夹路径正确,并且包含图像扩展名

为了进行测试,请将img标记放在index.php中

<img src="images/abc/filename.jpg">

/root/index.php

现在将图像放入abc/文件夹中

/root/images/abc/filename.jpg

这将显示图像


如果你的img标签在根目录下的另一个文件夹中,如下所示

/root/user/index.php

现在,当您使用img标记时,请使用此路径(相对链接):


请注意图像路径“./”的开头,它用于返回到根目录


如果包含img标记的php或html文件更深,只需记住为每个级别添加../两个文件夹深:

<img src="../../images/abc/filename.jpg">


这个问题很模糊,所以希望这就是你们要找的


让我知道,如果这是错误的,请再解释一点,我会尽力帮助:)

如果您将webapp作为IDE项目运行,并将上载的图像存储在IDE的项目空间中,则可能会发生这种情况。IDE项目文件夹中由外部执行的更改(如servlet代码)不会立即反映在已部署服务器的工作文件夹中。只有当您触摸它(刷新项目)或复制它(正如您碰巧发现的那样),它才会被反射

毕竟,将上传的文件存储在webapp的deploy文件夹中是个坏主意。只要重新部署webapp,这些文件就会丢失,原因很简单,因为这些文件不包含在原始WAR文件中

您需要将它们存储在webapp的deploy文件夹之外的其他固定路径上,如
/var/webapp/uploads
。您不应该使用相对路径或
getRealPath()
在其周围创建
文件
对象。只需使用固定路径。您始终可以将固定路径配置为上下文参数设置、VM参数、属性文件设置甚至JNDI条目

然后,为了将其服务于万维网,只需将该路径作为另一个docroot添加到服务器配置中。不清楚您使用的是哪台服务器,但在Tomcat中,只需将另一台
添加到
server.xml

另见:

我尝试了你提到的[code]测试,但结果是一样的。我正在使用jsp,并从数据库中获取字符串变量中的图像的src。string src=“image/abc/filename.jpg”['code']“/>这是可行的,但string src=“image/uploads/filename.jpg”['code']“/>不可行。问题似乎出在uploads文件夹上。是不是因为我使用了与用户上传的图片相同的文件夹?你是否将上传文件夹设置为可写0777?同样在你的上传脚本中,你是如何处理文件夹创建和上传图片到特定文件夹的…你能显示你的代码块吗
<img src="../../images/abc/filename.jpg">