首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Spring Boot和Thymeleaf发送HTML电子邮件

Spring Boot是一个用于构建独立的、生产级别的Spring应用程序的框架。它简化了Spring应用程序的配置和部署过程,并提供了一套强大的开发工具和约定,使开发人员能够快速构建可靠的应用程序。

Thymeleaf是一种现代化的服务器端Java模板引擎,用于构建可扩展的自然模板。它具有简单、灵活和强大的特性,可以与Spring Boot无缝集成,用于生成动态的HTML页面。

使用Spring Boot和Thymeleaf发送HTML电子邮件的步骤如下:

  1. 添加依赖:在项目的pom.xml文件中添加Spring Boot和Thymeleaf的依赖。
代码语言:txt
复制
<dependencies>
    <!-- Spring Boot -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-mail</artifactId>
    </dependency>

    <!-- Thymeleaf -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
</dependencies>
  1. 配置邮件发送:在应用程序的配置文件(如application.properties)中配置邮件发送的相关属性,包括SMTP服务器地址、端口号、用户名、密码等。
代码语言:txt
复制
spring.mail.host=smtp.example.com
spring.mail.port=587
spring.mail.username=your-email@example.com
spring.mail.password=your-password
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
  1. 创建邮件模板:使用Thymeleaf创建HTML邮件模板,可以在模板中使用动态数据。
代码语言:txt
复制
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Email Template</title>
</head>
<body>
    <h1 th:text="${title}">Default Title</h1>
    <p th:text="${message}">Default Message</p>
</body>
</html>
  1. 编写邮件发送代码:在Java代码中使用Spring Boot的邮件发送功能,加载邮件模板并填充动态数据,然后发送邮件。
代码语言:txt
复制
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
@SpringBootApplication
public class EmailApplication {

    @Autowired
    private JavaMailSender mailSender;

    public static void main(String[] args) {
        SpringApplication.run(EmailApplication.class, args);
    }

    @GetMapping("/")
    public String sendEmail(Model model) {
        String title = "Welcome to My Website";
        String message = "Thank you for visiting my website. Have a nice day!";
        model.addAttribute("title", title);
        model.addAttribute("message", message);

        SimpleMailMessage mailMessage = new SimpleMailMessage();
        mailMessage.setTo("recipient@example.com");
        mailMessage.setSubject("Welcome Email");
        mailMessage.setText("This is a welcome email.");

        mailSender.send(mailMessage);

        return "email-sent";
    }
}

在上述代码中,我们使用@Autowired注解将JavaMailSender自动注入到EmailApplication类中。然后,我们在sendEmail方法中设置邮件的标题和内容,并创建一个SimpleMailMessage对象来设置收件人、主题和正文。最后,通过调用mailSender.send(mailMessage)方法发送邮件。

  1. 运行应用程序:使用Spring Boot的内置服务器(如Tomcat)运行应用程序,并访问发送邮件的URL(如http://localhost:8080/)。

以上就是使用Spring Boot和Thymeleaf发送HTML电子邮件的完整步骤。通过这种方式,我们可以方便地发送包含动态数据的HTML邮件。对于更复杂的邮件需求,可以使用Spring Boot提供的更高级的邮件功能或者结合其他库来实现。

腾讯云相关产品推荐:

  • 邮件推送服务:https://cloud.tencent.com/product/ses
  • 云服务器:https://cloud.tencent.com/product/cvm
  • 云数据库MySQL版:https://cloud.tencent.com/product/cdb_mysql
  • 云存储COS:https://cloud.tencent.com/product/cos
  • 人工智能平台:https://cloud.tencent.com/product/ai
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Spring Boot2(五):使用Spring Boot结合Thymeleaf模板引擎使用总结

    SpringBoot推荐的 Thymeleaf – 语法更简单,功能更强大; Thymeleaf是一种Java XML/XHTML/HTML5模板引擎,可以在Web非Web环境中使用。...它更适合在基于MVC的Web应用程序的视图层提供XHTML/HTML5,但即使在脱机环境中,它也可以处理任何XML文件。它提供了完整的Spring Framework集成。...|"> 2、条件判断 If/Unless Thymeleaf使用th:ifth:unless属性进行条件判断,下面的例子中,标签只有在th:if中条件成立时才显示: <a th:if="${myself...1. pom.xml 添加依赖 org.springframework.<em>boot</em> <em>spring</em>-<em>boot</em>-starter-<em>thymeleaf</em>... 2. .properties 配置 <em>Thymeleaf</em> 信息 server: port: 8081 <em>spring</em>: <em>thymeleaf</em>:

    2.6K10

    Spring Boot使用JavaMailSender发送邮件

    相信使用Spring的众多开发者都知道Spring提供了非常好用的 JavaMailSender接口实现邮件发送。在Spring Boot的Starter模块中也为此提供了自动化配置。...下面通过实例看看如何在Spring Boot使用 JavaMailSender发送邮件。...由于Spring Boot的starter模块提供了自动化配置,所以在引入了 spring-boot-starter-mail依赖之后,会根据配置文件中的内容去创建 JavaMailSender实例,因此我们可以直接在需要使用的地方直接...在Spring Boot使用模板引擎来实现模板化的邮件发送也是非常容易的,下面我们以velocity为例实现一下。... 我们之前在Spring Boot中开发Web应用时,提到过在Spring Boot的自动化配置下,模板默认位于 resources/templates/目录下

    1.3K60

    使用Postfix,DovecotMySQL发送电子邮件

    我们将解释如何创建新的用户邮箱以及如何在配置的域中发送或接收电子邮件。 对于其他Linux发行版或不同的邮件服务器,请查看我们的电子邮件教程。...要使用别名作为用户名: 添加别名作为sourcedestination电子邮件地址的virtual_aliases表。...Mailutils测试电子邮件 要向Linode邮件服务器发送接收测试电子邮件,请安装Mailutils软件包: sudo apt-get install mailutils 将测试电子邮件发送到邮件服务器之外的电子邮件地址...从外部电子邮件地址向您的Linode邮件服务器发送测试电子邮件。...重新登录您的Linode并检查是否收到了电子邮件; 替换您发送邮件的用户名域名: sudo mail -f /var/mail/vhosts/example.com/email1 出现提示时,输入与您要查看的电子邮件对应的数字

    3.8K30

    简单易用的Spring Boot邮件发送

    Spring如何实现邮件发送?本文介绍了如何使用Spring Boot发送邮件。我们首先需要配置SMTP邮件服务器,然后创建邮件模板并使用Thymeleaf模板引擎解析动态内容。...总之,Spring Boot提供了一个简单的方法来发送电子邮件,使得发送电子邮件变得更加容易高效。如果您需要发送电子邮件,这个技术是值得一试的。...我们只需要向方法传递一些基本参数,例如收件人地址,主题消息。小结在本文中,我们学习了如何使用Spring Boot发送邮件。...总结本文介绍了如何使用Spring Boot发送邮件实现步骤。发送邮件是Web应用程序中的常见需求,通过本文的学习,您可以快速了解如何在Spring Boot中实现邮件发送功能。...总之,Spring Boot提供了一个简单的方法来发送电子邮件,使得发送电子邮件变得更加容易高效。如果您需要发送电子邮件,这个技术是值得一试的。

    40661

    Spring Boot 与 kotlin 使用Thymeleaf模板引擎渲染web视图

    在《使用Spring BootKotlin创建RESTfull API》一文中,我们完成了一个简单的RESTful 服务,体验了Spring Boot 与 kotlin结合的神力,但是往往我们也需要web...的支持,那么本篇就在上一个文章的基础上介绍Spring Boot 与 kotlin 使用Thymeleaf模板引擎渲染web视图。...Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。你可以使用它创建经过验证的XML与HTML模板。...在Spring Boot使用Thymeleaf,只需要引入下面依赖,并在默认的模板路径 src/main/resources/templates下编写模板文件即可完成。...测试环境或者开发环境避免出现不可预期问题一般设置: spring.thymeleaf.cache=true 支持JSP的配置 Spring Boot并不建议使用,如果需要,参考此工程:JSP支持 总的来说

    1.5K30

    Spring Boot入门教程3-2、使用Spring Boot+Thymeleaf模板引擎开发Web应用

    2、无法实现页面继承工程,实现模板页的方式蹩脚 3、由于一些已知问题,Spring Boot官方不建议,比如:Spring Boot+JSP打成jar包会有问题 所以,ken.io选择了较为流行的Thymeleaf...,本文我们介绍Spring Boot+Thymeleaf的基本使用 本项目构建基于:https://ken.io/note/springboot-course-basic-helloworld 二、操作步骤...Boot & Thymeleaf"); return modelAndView; } 对比index函数,主要发生了以下几个变化: 1、去掉@ResponseBody注解,如果使用该注解...to Spring Boot & Thymeleaf 三、备注 Thymeleaf 常用配置 配置项 说明 spring.thymeleaf.prefix 模板根目录,例如:classpath:/...内容类型,例如:text/html spring.thymeleaf.suffix 模板文件后缀,默认为.html 本文参考: https://docs.spring.io/spring-boot/

    94630

    SpringBoot系列(十三)集成邮件服务以及邮件发送的几种方式

    带附件内容正文带图片的邮件发送 3. thymeleaf模板作为邮件发送 五、总结 一、SMTP协议简介 SMTP是一种提供可靠且有效的电子邮件传输的协议。...简单来说:我们使用的这些邮件发送功能,他们之间都有一个专门的电子邮件的服务器,类似于邮局,你将邮件发给邮局,邮局又会根据你的邮寄地址发送给相应的邮局,然后接收方去邮局取邮件。...而邮件服务器呢,就是互联网之间的一个邮局,不同的网络之间也能实现电子邮件发送。  ...利用我自己的邮箱进行测试的截图: 3 3. thymeleaf模板作为邮件发送  项目中需要引入thymeleaf依赖,并且要在新建的html文件中加入:xmlns:th="http://... org.springframework.boot spring-boot-starter-thymeleaf

    79920

    Spring Boot 发送邮件,端口号大有玄机!

    Spring Boot 发送邮件,松哥之前专门写过文章,这里就不啰嗦了。还不懂 Spring Boot 如何发送邮件的小伙伴,翻到本文后半部分,有介绍。...一般来说,我们用 Spring Boot 发送邮件的时候,465 587 都能用,但是不建议使用 25。...邮件发送其实是一个非常常见的需求,用户注册,找回密码等地方,都会用到,使用 JavaSE 代码发送邮件,步骤还是挺繁琐的,Spring Boot 中对于邮件发送,提供了相关的自动化配置类,使得邮件发送变得非常容易...调用该方法,发送邮件,效果图如下: 3.3.5 使用 Thymeleaf 作邮件模板 推荐在 Spring Boot使用 Thymeleaf 来构建邮件模板。...首先,引入 Thymeleaf 依赖:     org.springframework.boot     spring-boot-starter-thymeleaf

    82950
    领券