好文档 - 专业文书写作范文服务资料分享网站

springboot集成邮件服务

天下 分享 时间: 加入收藏 我要投稿 点赞

springboot集成邮件服务

一、前言

Spring Email 抽象的核心是 MailSender 接口,MailSender 的实现能够把 Email 发送给邮件服务器,由邮件服务器实现邮件发送的功能。

Spring 自带了一个 MailSender 的实现 JavaMailSenderImpl,它会使用 JavaMail API 来发送 Email。Spring 或 SpringBoot 应用在发送 Email 之前,我们必须要 JavaMailSenderImpl 装配为 Spring应用上下文的一个 bean。 回到顶部

二、配置

1、pom.xml

org.springframework.boot

spring-boot-starter-mail

2、application.yml

spring: mail:

host: smtp.163.com port: 25

username: 159****2662@163.com password: ***********

host 属性默认是 JavaMail 会话的主机;port 端口默认监听标准的 SMTP 端口25;如果邮件服务器需要认证的,还需要设置 userrname 和 password。

这里我用的是 163 的邮件服务器,需要在 163 邮箱中开启客户端授权密码,否则会报 550 认证错误。

3、EmailConfig.java

在这里,我们把 JavaMailSenderImpl 装配为 Spring 应用上下文的一个 Bean。同时需要注意的是,这里使用了@ConfigurationProperties 注解,该注解需要属性有 setter 方法并在启动类中使用 @EnableConfigurationProperties 注解使之生效。

@Configuration

@ConfigurationProperties(prefix = \public class EmailConfig {

private String host;

private Integer port; private String username; private String password;

@Bean

public MailSender javaMailSender() {

JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl(); javaMailSender.setHost(host); javaMailSender.setPort(port);

javaMailSender.setUsername(username); javaMailSender.setPassword(password); return javaMailSender; }

public void setHost(String host) { this.host = host; }

public void setPort(Integer port) { this.port = port; }

public void setUsername(String username) { this.username = username; }

public void setPassword(String password) { this.password = password; } }

回到顶部

三、发送

有了 javaMailSender,那么邮件发送就是一件再简单不过的事情了。我们只需要将 javaMailSender 的 Bean 注入到我们自己的实现类中,然后使用 JavaMail API 来发送 Email。

1、文本邮件发送

public void sendSimpleEmail() {

springboot集成邮件服务

springboot集成邮件服务一、前言SpringEmail抽象的核心是MailSender接口,MailSender的实现能够把Email发送给邮件服务器,由邮件服务器实现邮件发送的功能。Spring自带了一个MailSender的实现JavaMailSenderImpl,它会使用J
推荐度:
点击下载文档文档为doc格式
86pe34tq9x6zh7s4eqk6667gj1yjjc01cgg
领取福利

微信扫码领取福利

微信扫码分享