我使用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 文件并检查内容以确保它在根目录中,您应该很高兴。