Java Can';t在jsp页面上显示图像

Java Can';t在jsp页面上显示图像,java,spring,jsp,path,Java,Spring,Jsp,Path,我试图在jsp页面上显示一个图像。 我正在使用SpringSecurity/mvc进行开发 这是jsp页面的一部分: <a href="/images/logo.png"> <img src="/images/logo.png" alt="logo"> </a> 当我运行时,图像不会显示。 我尝试了很多建议,但都不起作用,我还尝试了相对路径和绝对路径。当然问题在于您的文件结构。 使用CTRL+SHIFT+I(在Mozilla或Chrome中)打开开发工具并

我试图在jsp页面上显示一个图像。 我正在使用SpringSecurity/mvc进行开发

这是jsp页面的一部分:

<a href="/images/logo.png">
<img src="/images/logo.png" alt="logo">
</a>
当我运行时,图像不会显示。
我尝试了很多建议,但都不起作用,我还尝试了相对路径和绝对路径。

当然问题在于您的文件结构。 使用CTRL+SHIFT+I(在Mozilla或Chrome中)打开开发工具并检查图像元素。当然,链接断开了,这意味着您试图从错误的位置(或不存在的位置)获取图像

使用上下文路径:

<img src="${pageContext.request.contextPath}/images/logo.png"/> 

根据您的配置,您的图像应该位于子文件夹images/logo.png中web应用程序的根目录中。您的img标记应该包括servlet上下文根。例如,您应该使用jsp核心标记库附加上下文根

<c:url value="/images/logo.png" var="logo"/>
<a href="${logoUrl}">
<img src="${logoUrl}" alt="logo">
</a>

注意。附加上下文的方法取决于渲染技术。如果您使用的是纯HTML,则可以手动附加上下文根。但是,这会对值进行硬编码,这是一个维护噩梦,因为当您需要更改上下文时,需要在每个页面中更改值

<a href="/myapp/images/logo.png">
<img src="/myapp/images/logo.png" alt="logo">
</a>

尝试使用图像的相对路径:

<a href="../../images/logo.png">
   <img src="../../images/logo.png" alt="logo">
</a>


你能发布你的文件夹结构吗?你想在单击图像时打开它吗?我在jsp页面中也看不到图像,或者当我单击它时,我编辑了文章,以便你可以看到文件夹结构OK!您的jsp放在哪里?你也可以打开webinf文件夹吗?我已经添加了一个答案。这里有一个更好的解决方案,可以避免为每个图像指定上下文根。
<a href="../../images/logo.png">
   <img src="../../images/logo.png" alt="logo">
</a>