4

我试图将我的 spring webmvc proyect 的模板文件夹外部化,我需要这个功能,因为设计师想要经常修改 html。并且很难让他在de一个战争文件中进行编辑。我使用 thymeleaf 作为 templateResolver

<bean id="templateResolver" 
    class="org.thymeleaf.templateresolver.ServletContextTemplateResolver">

    <property name="prefix" value="file:/opt/templates/" />
    <property name="suffix" value=".html" />
    <property name="templateMode" value="HTML5" />
    <property name="cacheable" value="false" />
</bean>

我试过用这条线,但没有用

<property name="prefix" value="file:/opt/templates/" />

我怎样才能做到这一点?

4

2 回答 2

8

您可以使用FileTemplateResolver而不是ServletContextTemplateResolver.

尝试这个:

<bean id="templateResolver" 
    class="org.thymeleaf.templateresolver.FileTemplateResolver">

    <property name="prefix" value="/opt/templates/" />
    <property name="suffix" value=".html" />
    <property name="templateMode" value="HTML5" />
    <property name="cacheable" value="false" />
</bean>
于 2013-09-05T00:44:15.327 回答
1

班级版本:

@Configuration
public class TemplateEngineConfig {
    @Value("${templates.path}")
    private String HTML_TEMPLATES_PATH;

    @Bean
    public TemplateEngine templateEngine() {
        TemplateEngine templateEngine = new TemplateEngine();
        templateEngine.setTemplateResolver(templateResolver());
        return templateEngine;
    }

    private TemplateResolver templateResolver() {
        TemplateResolver resolver = new FileTemplateResolver();
        resolver.setPrefix("/opt/templates/");
        resolver.setSuffix(".html");
        resolver.setCacheable(false);
        return resolver;
    }
}
于 2017-08-18T08:15:25.213 回答