如何在spring boot中为webjars配置缓存控制

时间:2016-07-17 19:38:32

标签: spring http spring-mvc spring-boot cache-control

我已经看到了几个现有的answers,但是当我添加以下内容时,所有webjars都开始返回404。如何为所有webjars配置缓存控制?

@Configuration
public class HttpCacheControlConfig extends WebMvcConfigurerAdapter {


    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/webjars/**").setCachePeriod( 3600 * 24 );
    }
}

1 个答案:

答案 0 :(得分:1)

您尚未为处理程序配置任何资源位置。你需要这样的东西:

registry.addResourceHandler("/webjars/**")
        .addResourceLocations("classpath:/META-INF/resources/webjars/")
        .setCachePeriod(3600 * 24);

或者,如果您对所有静态资源都具有相同的缓存时间感到满意,那么您不需要WebMvcConfigurerAdapter,因为您可以使用application.properties中的属性对其进行配置:

spring.resources.cache-period = 86400