我正在用Thymeleaf构建一个Web Spring Boot。我看到Thymeleaf总是加载所有资源,当我刷新或更改页面像this Thymeleaf。如何从内存中缓存资源,类似于.Net MVC框架,可以像this DotNetMVC那样做
有两种方法可以做到这一点。
WebMVCConfig。
像这样创建模板解析器。
@Bean
public TemplateResolver templateResolver()
{
FileTemplateResolver templateResolver = new FileTemplateResolver();
templateResolver.setTemplateMode( "HTML5" );
templateResolver.setCacheable( Boolean.FALSE );
templateResolver.setOrder( 1 );
return templateResolver;
}
应用属性
将以下行添加到application.properties文件中
spring.thymeleaf.cache: false
我看到了其他解决方案
@Bean
public WebMvcConfigurer configurer () {
return new WebMvcConfigurer() {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**")
.addResourceLocations("/resources/")
.setCachePeriod(31556926);
}
};
}
供参考:headers-cache-control但仍然不适合我。我也在使用Spring Boot Security。