如何在spring mvc中提供静态内容?
我在我当前的项目中使用spring-mvc框架。 ROOT文件夹有很多包含html,jsp,css,js等的web文件夹。我的spring mvc配置如下:
<!-- -->
我在我的java控制器中定义了映射。 但这会导致像任何图像一样的静态内容消失。 如果我通过访问ROOT //。jpg请求任何文件夹中的任何图像,它会给我404响应代码,尽管图像存在。 如果我删除spring-mvc,则会显示图像。
请注意,spring-mvc的resources属性适用于静态内容,但需要我的静态内容存在于特定文件夹中,例如resouce文件夹。 所以这种方法对我没用。
假设您有一个包含某些产品图像的目录(/resources/my_images/)
,并且您希望根据请求提供这些图像。 例如,如果请求的URL是http://localhost:8080/ mystore/resource/my_images/P123.png
,那么您希望使用P123.png
名称提供图像。 同样,如果请求的URL是http://localhost:8080/mystore/resource/images/P1234.png
,则需要提供名为P1234.png
的图像。
现在你如何使用Spring MVC提供静态图像?
- 将一些图像放在
src/main/webapp/resources/my_images/
目录下; - 在我们的Web应用程序上下文的配置
DispatcherServlet-context.xml
文件中添加以下标记: - 运行您的应用程序并输入
http://localhost:8080/mystore/resource/images/P123.png
(根据您放置的图像更改URL中的图像名称
FYI:Web应用程序上下文配置中的
标记告诉Spring这些图像文件在我们的项目中的位置,以便spring可以根据请求提供这些文件。