如何在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提供静态图像?

  1. 将一些图像放在src/main/webapp/resources/my_images/目录下;
  2. 在我们的Web应用程序上下文的配置DispatcherServlet-context.xml文件中添加以下标记:
  3. 运行您的应用程序并输入http://localhost:8080/mystore/resource/images/P123.png (根据您放置的图像更改URL中的图像名称

FYI:Web应用程序上下文配置中的标记告诉Spring这些图像文件在我们的项目中的位置,以便spring可以根据请求提供这些文件。