如何从Thymeleaf 3.0.5中的数据库读取Thymeleaf模板?

如何从Thymeleaf 3.0.5中的数据库读取Thymeleaf模板?,第1张

如何从Thymeleaf 3.0.5中的数据库读取Thymeleaf模板?

通过大多数的反复试验,我得以将其拼凑起来。将其张贴在此处可帮助下一个寻找相似内容的人。

在新版本的Thymeleaf中,这变得更容易。现在只需要做的就是扩展StringTemplateResolver。

import java.util.Map;import org.thymeleaf.IEngineConfiguration;import org.thymeleaf.templateresolver.StringTemplateResolver;import org.thymeleaf.templateresource.ITemplateResource;import com.google.common.collect.Sets;public class ThymeleafDatabaseResourceResolver extends StringTemplateResolver {    private final static String PREFIX = "";    @Autowired ThymeleafTemplateDao thymeleaftemplateDao;    public ThymeleafDatabaseResourceResolver() {        setResolvablePatterns(Sets.newHashSet(PREFIX + "*"));    }    @Override    protected ITemplateResource computeTemplateResource(IEngineConfiguration configuration, String ownerTemplate, String template, Map<String, Object> templateResolutionAttributes) {        // ThymeleafTemplate is our internal object that contains the content.          // You should change this to match you're set up.        ThymeleafTemplateDao thymeleaftemplateDao = ApplicationContextProvider.getApplicationContext().getBean(ThymeleafTemplateDao.class);        ThymeleafTemplate thymeleafTemplate = thymeleaftemplateDao.findByTemplateName(template);          if (thymeleafTemplate != null) { return super.computeTemplateResource(configuration, ownerTemplate, thymeleafTemplate.getContent(), templateResolutionAttributes);        }        return null;    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5065908.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存