我刚开始使用Thymeleaf,并且试图了解模板解析器中的setPrefix()
方法。我了解某些情况,例如setPrefix("classpath:/com/package")
或setPrefix("file:folder")
(相对于工作目录)。
但是我还是不明白,例如setPrefix("/views/")
指的是什么。 Thymeleaf期望views
文件夹在哪里?开头的/
是不是绝对路径?如果是这样,“根”在哪里?
是否取决于特定的TemplateResolver?在我的实例中,我正在使用SpringResourceTemplateResolver。
最佳答案
如果您使用的是SpringResourceTemplateResolver,则该前缀相对于war文件的根目录(或解压后的web-app基本目录)。
当使用Maven作为构建系统时,其源文件夹为src/main/webapp
。例如,如果您setPrefix("/views/")
您的模板应放在src/main/webapp/views/
中。
提示:使用WEB-INF目录可以防止最终用户直接检索模板。