我需要在 Spring Boot Web 应用程序中为 FreeMarker 指定多个模板加载器路径,但 FreeMarkerAutoConfigurationClass
只让我使用 spring.freemarker.templateLoaderPath
指定一个路径属性,它使用 FreeMarkerConfigurationFactory
中的 setTemplateLoaderPath
方法。但是,此类允许我使用 setTemplateLoaderPaths 方法设置多个路径。覆盖此自动配置类并指定多个加载器路径的最佳方法是什么?我不太了解 Spring Java 配置类,在编写我需要的代码之前我想要一个示例。我正在使用 Spring Boot 1.1.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 。
关于java - 如何在 Spring Boot 中为 Freemarker 指定多个 templateLoaderPath?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26589229/