SpringMVC Maven 链接文件在 JSP 文件中



我使用eclipse,springmvc和maven。我在下面创建了一个文件夹

网络内容 --> 网络信息-->资源

我将以下内容添加到我的servlet中:

 <mvc:resources mapping="/resources/**" location="/WEB-INF/resources/" />
<mvc:annotation-driven />

然后我尝试将图片包含在我的索引.jsp文件中。(Web-Content->index.jsp)

<img src = "/resources/images/Logo.png" />

但它没有加载我的图像。我尝试了很多教程,但它不起作用。我想我是一个基本错误。你能告诉我怎么了吗?

编辑:

我的塞尔维特得到了这个

<mvc:annotation-driven />
<mvc:resources mapping="/resources/**" location="/resources/" />

在我的jsp文件中,我这样做了:

<img src="<c:url value="/resources/logo.png" />"/>

我在以下位置获得了带有徽标.png文件的资源文件夹:

main->resources
main->webapp->resources
main->webapp->WEB-INF->resources

它仍然不起作用我也试过:

<mvc:resources mapping="/resources/**"
               location="/, classpath:/WEB-INF/public-resources/"
               cache-period="10000" />

并包括图片

/resources/images/logo.png

和图片位于

src/main/webapp/images/logo.png

对我不起作用

编辑:

我猜是这样的:

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

对程序没有影响。我可以随时访问网址http://localhost:8080/test/resources/logo.png不管我是否在我的Serlvet中得到了这条MVC线。如果我改变

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

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

我无法使用http://localhost:8080/test/resources1/logo.png但使用http://localhost:8080/test/resources/logo.png访问文件

问候山姆

顺便说一句,虽然最好创建一个 Eclipse 动态 Web 项目并通过 Eclipse 将其转换为 Maven 项目,但它会起作用,因为 Eclipse 会在您的 POM 中放置一个指向 WebContent 目录的条目。看看你可能会在那里找到它。制作动态 Web 项目本身并没有错,但我通常会更改初始目录配置以符合 maven 在向导中的期望,并立即转换为 maven 项目。在 POM 上工作比将 jar 复制到 lib 目录要容易得多。

否则,您引用的resources目录应位于war文件的根目录中。获取它的最佳方法是将resources放在WebContent目录的根目录中,而不是WEB-INF 。尝试将其移动到那里,打开 .war 文件并检查内容以确保它在根目录中,您应该很高兴。

相关内容

  • 没有找到相关文章

最新更新