我需要在Spring Boot Web应用程序中为FreeMarker指定多个模板加载器路径,但FreeMarkerAutoConfigurationClass
只允许我使用spring.freemarker.templateLoaderPath
属性指定一个路径,该属性使用setTemplateLoaderPath
方法在FreeMarkerConfigurationFactory
。但是,这个类允许我使用setTemplateLoaderPaths
方法设置多个路径。哪个是覆盖此自动配置类并指定多个加载器路径的最佳方法?我真的不太了解Spring Java配置类,在编写我需要的代码之前我想要一个例子。我正在使用Spring Boot 1.1.2。提前谢谢。
答案 0 :(得分:2)
您需要提供自己的org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer
类型的bean,并提供所需的配置。为此,请将以下类似内容添加到应用程序的Java配置类中:
@Bean
public FreeMarkerConfigurer freeMarkerConfigurer() {
FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();
configurer.setTemplateLoaderPaths("one", "two", "three");
// Apply further configuration as needed
return configurer;
}
更新:最新的Spring Boot 1.2快照现在接受spring.freemarker.templateLoaderPath属性的逗号分隔列表,允许您指定多个路径而不声明自定义FreeMarkerConfigurer
bean。