发送HTML格式邮件

主要在于构建HTML模板,新建类似模板:

<table border='0' th:each='data:${datas}' cellspacing='1' cellpadding='0'
       style='background:#DCDFE6; line-height: 30px;width: 900px;  left:auto;'>
    <tr style="color: #000000;text-align: left;font-weight: bold;">
        <td colspan='4'>任务名称:<span th:text='${data.taskName}'/></td>
    </tr>
    <tr style="text-align: left;">
        <th style='background:#FFF;width: 80px; '>ID</th>
        <th style='background:#FFF;'>名称</th>
        <th style='background:#FFF;width: 60px;'>时间</th>
        <th style='background:#FFF;width: 60px;'>数量</th>
    </tr>
    <tr th:each='item:${data.list}' style="text-align: left;">
        <td style="background: #FFF;width: 80px;" th:text='${item.id}'></td>
        <td style="background: #FFF;" th:text='${item.name}'></td>
        <td style="background: #FFF;width: 60px;" th:text='${item.time}'></td>
        <td style="background: #FFF;width: 60px;" th:text='${item.count}'></td>
    </tr>
    <br />
</table>

使用 thymeleaf 加载HTML,并赋值构造完整HTML页面。

引入插件:

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
            <version>2.4.3</version>
        </dependency>

构建HTML

SpringTemplateEngine templateEngine = new SpringTemplateEngine();
            Context context1 = new Context();
            context1.setVariable("datas",list);
            String content = templateEngine.process(mailInfo.getMailContent(),context1);

然后发送邮件

 

posted @ 2022-09-15 18:32  Johnson_wang  阅读(72)  评论(0编辑  收藏  举报