查看上传的图片所需的正确路径是什么?
在我的Web应用程序中,我的页面之一是将照片上传到路径
/ usr / local / rac / picture-name-goes-here
照片上传正常,但是我需要在另一个页面中访问它,当我尝试从JSP访问它时,它不会显示,我猜我的照片路径不正确
我的JSP中用于访问照片的代码如下所示。
<tr> <td>
<img src="/usr/local/agent/photo-name-here.jpg"/>
</td>
</tr>
我对这张照片的路径是否不正确?如果有帮助,我正在从目录中的Tomcat运行我的Web应用程序
C:\ Tomcat6
我最终将把它转移到Linux机器上,并期望与照片共享相同的路径。
回答:
这里有一个主要的误解。HTML由网络浏览器而不是网络服务器执行。Web浏览器下载HTML,扫描还需要下载的任何资源(CSS,脚本,图像等),并为每个资源激发
一个新的HTTP请求 。所有资源都应指向 ,而不是客户端计算机不知道的某些本地磁盘文件系统路径。
基本上有两种方法可以解决此“问题”:
Context
向Tomcat的添加新的/conf/server.xml
:<Context docBase="/usr/local/agent" path="/images" />
这样,就可以通过http://example.com/images/ …
访问它们,并且您可以使用以下内容<img>
<img src="/images/photo-name-here.jpg"/>
- 创建一个
Servlet
基本上获取InputStream
图片的的OutputStream
,然后沿着一组正确的标头将其写入响应的。您可以在此处找到此类servlet的基本示例,并在此处找到更高级的示例。当将Servlet
映射到/images/*
中时web.xml
,可以通过http://example.com/contextname/images/ … 访问图像,并且您可以按以下方式使用它(假设JSP / HTML文件位于上下文根):<img src="images/photo-name-here.jpg"/>
以上是 查看上传的图片所需的正确路径是什么? 的全部内容, 来源链接: utcz.com/qa/427795.html