为了账号安全,请及时绑定邮箱和手机立即绑定

如何获取Thymeleaf中的html内容?

如何获取Thymeleaf中的html内容?

慕姐8265434 2019-07-06 23:31:44
问题描述我在SpringBoot中打算写一个邮件模板,在模板中替换变化的参数,转换为html字符串,再传给邮件服务。但是在获取html字符串的时候,结果在预期之外问题出现的环境背景及自己尝试过哪些方法这是我在学习SpringBoot的邮件服务遇到的问题,参考文章是SpringBoot(十):邮件服务相关代码resource/templates/emailTemplate.htmlTitle你好,!@TestpublicvoidtestThymeleaf(){Contextcontext=newContext();context.setVariable("username","wedjg");Stringresult=templateEngine.process("emailTemplate",context);System.out.println(result);}你期待的结果是什么?实际看到的错误信息又是什么?预期的结果是输出被渲染后的html字符串,也就是:...;但是实际返回的结果却是"emailTemplate"请问我该如何做才能获取到html字符串?
查看完整描述

2 回答

?
慕少森

TA贡献2019条经验 获得超9个赞

Stringresult=templateEngine.process("emailTemplate",context);
第一个参数不应该是"emailTemplate",而应该是对应模板的内容,改成
Filefile=ResourceUtils.getFile("classpath:template/emailTemplate.html");
Stringresult=templateEngine.process(newString(Files.readAllBytes(file.toPath())),context);
                            
查看完整回答
反对 回复 2019-07-06
?
心有法竹

TA贡献1866条经验 获得超5个赞

刚好碰到跟楼主相同的问题,如果是采用springboot默认配置的话
@Autowired
privateTemplateEnginetemplateEngine;
@Test
publicvoidtestThymeleaf(){
Contextcontext=newContext();
context.setVariable("username","wedjg");
Stringresult=templateEngine.process("emailTemplate",context);
System.out.println(result);
}
直接使用注入的TemplateEngine对象就能直接访问到resource/templates目录下的模板文件
                            
查看完整回答
反对 回复 2019-07-06
  • 2 回答
  • 0 关注
  • 2079 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信