Spring Boot实现发送邮件

网友投稿 277 2022-10-16


Spring Boot实现发送邮件

发送邮件

在web开发中,发送邮件是一个很常用的功能,Spring Boot也集成了发送邮件的功能

基本使用

使用Spring Boot的发送邮件功能,需要导入邮件的starter依赖

org.springframework.boot

spring-boot-starter-mail

配置邮件发送服务器的配置,如果是qq邮箱,password属性为邮箱的授权码

spring:

mail:

host: smtp.qq.com

username: 425017255@qq.com

password: xxxxxxxx

properties:

mail.smtp.ssl.enable: true

创建一个简单邮件对象SimpleMailMessage,设置邮件的主题,内容,发件人和收件人,然后自动注入javaMailSenderImpl对象,使用这个对象的send方法发送邮件

@SpringBootTest

class DemoApplicationTests {

@Autowired

JavaMailSenderImpl mailSender;

@Test

void contextLoads() {

SimpleMailMessage message = new SimpleMailMessage();

message.setSubject("测试邮件");

message.setText("这是一封测试邮件");

message.setTo("blackball1998@outlook.com");

message.setFrom("425017255@qq.com");

mailSender.send(message);

}

}

这样就可以发送简单邮件了

发送复杂邮件

发送复杂邮件,可以使用发送类的createMimeMessage方法创建一个复杂邮件对象MimeMessage,这个方法还有一个重载方法,可以读取IO流创建邮件对象

创建一个用于设置邮件的对象MimeMessageHelper,这个对象可以设置多种邮件的常用属性,这里以设置附件为例

@SpringBootTest

class DemoApplicationTests {

@Autowired

JavaMailSenderImpl mailSender;

@Test

void contextLoads() throws MessagingException {

MimeMessage message = mailSender.createMimeMessage();

MimeMessageHelper messageHelper = new MimeMessageHelper(message, true, "utf-8");

messageHelper.setSubject("测试复杂邮件");

// 设置带样式的正文,使用html的方式设置样式

messageHelper.setText("

请查收附件

// 读取本地的一个文件,设置邮件的附件

messageHelper.addAttachment("附件1.jpg",new File("1.png"));

messageHelper.addAttachment("附件2.jpg",new File("2.png"));

messageHelper.setTo("blackball1998@outlook.com");

messageHelper.setFrom("425017255@qq.com");

mailSender.send(message);

}

}

设置好邮件的属性,然后用发送类发送邮件,就可以收到复杂邮件

邮件中的附件也可以打开


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:NFV(Network Function Virtualizatin)·网络功能虚拟化战略实施
下一篇:华为防火墙 IPsec VPN的详细配置
相关文章

 发表评论

暂时没有评论,来抢沙发吧~