将图片插入jsp页面

新手上路,请多包涵

很抱歉我需要问这个问题,但我已经花了三天时间尝试这样做。我正在构建 Java Web 应用程序,我想将图像包含到 JSP 页面中。项目名称是 realestates,我在 realestates 文件夹中有 Files 文件夹。

我的代码是这样的:

 <img alt="govno" src="<%=request.getContextPath() + "/Files/kurac.jpg"%>" style="width: 400px; height: 300px;">

这是我在浏览器中打开页面后生成的内容:

 <img alt="govno" src="/realestates/Files/kurac.jpg" style="width: 400px; height: 300px;">

但是,图像没有显示,只写了 alt“govno”。我已经尝试了很多很多路径(相对,绝对,更改文件夹结构数百万次以及我能想到并在互联网上找到的任何东西但没有任何帮助)。谁说这种事会这么难做???

部署后 Tomcat 服务器上的文件夹结构为:

 webapps
 - realestates
   |- WEB-INF
   |- Files
     |- kurac.jpg

原文由 lijep dam 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 503
2 个回答

这是一个人在不到一分钟内解释它。

https://www.youtube.com/watch?v=dwjwSYOrnS8

所以需要两件事:

1.在一些配置xml文件中添加这一行

<mvc:resources location="/files/" mapping="/files/**"></mvc:resources>

2.用这一行将图像包含到JSP页面中

 <img src='<c:url value="/files/korali.jpg"></c:url>' />

原文由 lijep dam 发布,翻译遵循 CC BY-SA 3.0 许可协议

看起来你自己(和其他人)对图像的位置感到困惑。从你的问题来看,它似乎在 webapps/realestates/Files/kurac.jpg ,所以这应该有效:

 <img src="/realestates/Files/kurac.jpg">

根据您的第一条评论,它位于 C:/Users/Lazar/Documents/workspace-sts-3.8.3.RELEASE/realestates/Files/kurac.jpg ,因此无法通过 http:// 访问。这行不通。

根据您后来的评论,它位于 /webapp/realestates/WEB-INF/Files/kurac.jpg 。 WEB-INF 中的文件不可公开访问。这也行不通。

作为最后的手段,将图像文件移动到 webapps/ROOT 目录。在您的浏览器中尝试 http://localhost/kurac.jpg 。根据需要将 localhost 替换为您的服务器主机名。如果它有效,这也将有效:

 <img src="/kurac.jpg">

如果没有,则说明您的 Tomcat 配置有问题。尝试重新安装。

原文由 Rei 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题