Spring freemarker 多个模板加载器路径

Spring freemarker multiple template loader paths

我们在 spring 电子邮件启动项目中使用 freemarker 模板。

类路径中有一个默认目录,所有基本电子邮件模板都存储在该目录中。并且,还有其他用于客户自定义电子邮件模板的目录。

我们想要的是模板加载器应该首先在客户端的自定义目录中搜索给定的电子邮件模板,如果找不到,则只查看默认目录。

现在,我知道我们可以在 FreeMarkerConfigurationFactory setTemplateLoaderPaths(String... templateLoaderPaths) 中传递多个路径。但是这种方法是否保持查找顺序?

FreeMarkerConfigurationFactory 使用路径创建一个 MultiTemplateLoader,其中表示:

A TemplateLoader that uses a set of other loaders to load the templates. On every request, loaders are queried in the order of their appearance in the array of loaders provided to the constructor.

是的,该方法维护查找顺序。