前言
在实际专案中,经常需要用到邮件通知功能。比如,使用者通过邮件注册,通过邮件找回密码等;又比如通过邮件传送系统情况,通过邮件传送报表资讯等等,实际应用场景很多。这篇文章,就教大家通过springboot快速的实现一个传送邮件的功能。引入依赖
在springboot专案中,引入如下依赖:org.springframework.boot
spring-boot-starter-mail
配置档案
在springboot专案中引入依赖之后,即可在其配置档案中配置邮箱的引数:application.properties

不同的邮箱,host的配置不一样。如果是其它邮箱,搜寻下即可找到。
username为邮箱账号,password为邮箱的授权码(不是密码,需要在邮箱的设定页面中开启smtp)。
注入JavaMailSender例项
邮箱引数配置完之后,即可直接注入JavaMailSender例项。@Autowired
private JavaMailSender javaMailSender;
传送普通邮件
普通邮件,没有样式。实现起来最容易:@Test
public void testSend() throws MessagingException {
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom("传送者邮箱地址");
message.setTo("接受者邮箱地址");
message.setSubject("这是标题");
message.setText("这是内容");
javaMailSender.send(message);
}
From需要和配置档案中的username一致,否则会报错。
To为邮件接收者;
Subject为邮件的标题;
Text为邮件的内容。
执行方法,即可收到邮件:

传送HTML邮件
很多时候,我们需要邮件带有美观的样式。这时候,可以使用HTML的样式。我们需要使用javaMailSender的createMimeMessage方法,构建一个MimeMessage,然后使用MimeMessage例项创建出MimeMessageHelper。如下:@Test
public void testSend() throws MessagingException {
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage);
messageHelper.setSubject("标题");
messageHelper.setFrom("传送者邮箱地址");
messageHelper.setTo("接受者邮箱地址");
messageHelper.setText("
标题
这是内容
", true);
javaMailSender.send(messageHelper.getMimeMessage());
}
这里需要注意的是,setText的时候需要传一个布林值进去,表名需要使用HTML样式。
执行方法检视结果:

可以看到,h1的样式已经出来了。





























