Java Web应用程序。图像定位问题
我正在制作一个java web应用程序,我想让它显示一个图像。但是,它找不到我的图像 我在Java Web应用程序。图像定位问题,java,html,image,web,Java,Html,Image,Web,我正在制作一个java web应用程序,我想让它显示一个图像。但是,它找不到我的图像 我在/src/main/resources/images 另外,在.jsp文件中,我尝试了以下句子 <img src="/src/main/resources/images/Head.png"> </img> <img src="< c:url value='/src/main/resources/images/Head.png'/>"> </img&
/src/main/resources/images
另外,在.jsp
文件中,我尝试了以下句子
<img src="/src/main/resources/images/Head.png"> </img>
<img src="< c:url value='/src/main/resources/images/Head.png'/>"> </img>
">
我在做什么坏事
谢谢
编辑:
mi.jsp
文件的路径是/src/main/webapp/WEB-INF/jsp/welcome.jsp
您可以在中找到web应用程序代码
.war
文件的结构如下:
/
/WEB-INF
/lib
/classes
/META-INF
现在,您的应用程序具有以下结构(假设给定文件夹结构,您使用的是Maven)
现在,Maven war插件将在编译期间将类路径中的所有内容复制到/WEB-INF/classes
——默认情况下,这是/src/main/java
和/src/main/resources
问题的关键在于,请求不能访问/WEB-INF
或/META-INF
下的任何内容-这是为了安全,否则有人可以简单地下载/WEB-INF/WEB.xml
因此,为了添加可由浏览器访问的资源,您需要将其放入/src/main/webapp
-这将成为应用程序的根目录
因此,如果您将Head.png
放入/src/main/webapp/images
中,那么在JSP中您将使用:
<c:url value='/images/Head.png'/>
简而言之,您需要了解
.war
的目录结构是如何工作的,以及它与代码的关系。图像的路径必须与.jsp文件的路径相对
因为图像的路径是:/src/main/resources/images/Head.png
,而jsp文件的路径是:/src/main/webapp/WEB-INF/jsp/welcome.jsp
,所以您需要在图像标记中写入:
<img src="../../../resources/images/Head.png" />
。/../../
用于从jsp
文件夹转到main
文件夹,resources/images/Head.png
是从main
文件夹到图像的路径。谢谢大家,我可以解决我的问题
我所做的改变:
因此,为了添加可由浏览器访问的资源,您需要将其放置在/src/main/webapp中—这将成为应用程序的根目录
现在,我的图像位于/src/main/webapp/images
中
图像的路径必须相对于.jsp文件的路径 现在,我的
.jsp
文件的句子是
编辑[1]:
“我犯了一个错误。图像的路径是相对于/webapp类路径的!您的应用程序是一个。我认为您也可以尝试使用Spring Boot提供的工具来提供静态内容。无论如何,您现在这样做是因为您正在使用webjars进行css和js libs!!!与您使用的技术保持一致。在qestion中添加
.jsp
文件的路径您可以提供web应用程序的代码或指向web应用程序代码所在的公共存储库的链接吗?路径是/src/main/webapp/web-INF/jsp/welcome.jspOf当然,web应用程序的代码是有效的!但是我必须使用@SantiGil,除非您以context
,因此完整的URL将是/context/images/Head.png
,您的应用程序将不再工作。这就是存在的原因-自动添加到上下文中。谢谢,正如您所说,我必须使用.jsp文件路径的相对路径。我不建议这样做。我它不仅脆弱,而且可能不起作用。在您的问题中,您编写的图像路径是:/src/main/resources/images
。我不知道您是否在这里或在您的问题中犯了错误,但您需要修复它。我一开始就有这条路径,但正如蜘蛛鲍里斯所建议的,我已将此路径更改为/src/main/webapp/images添加了一个新的帖子来讨论这个问题。
<img src="../../../resources/images/Head.png" />