如何通过注释在Spring-boot中添加静态资源?

时间:2014-06-29 21:27:04

标签: spring spring-mvc spring-boot

除了预先确定的文件夹(例如/ static /)之外,有没有办法配置Spring Boot (不是通过XML)来指定静态资源的位置?

例如,从这个guide开始,我们添加另一个图像文件test1.jpg作为我们的静态资源。

这是最终的目录结构:

└── src
   └── main
       └── java
           └── hello
               └── Application.java 
               └── GreetingController.java
       └── resources
           └── templates
               └── greeting.html
           └── assets
               └── img
                   └── test1.jpg

我们没有更改此guide 中的任何java代码,但只在greeting.html中添加了一行:

<img src="test1.jpg" />

尽管如此,我们的greeting.html仍然无法找到test1.jpg。

有人可以给我们一些建议吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以添加@Bean类型WebMvcConfigurerAdapter并自行设置路径,例如

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**")
            .addResourceLocations("classpath:/assets/img";
    }

为什么不直接使用默认值?