Spring Boot如何发送电子邮件(文本或文本及带附件)呢?
下文笔者讲述SpringBoot发送电子邮件的方法分享,如下所示
发送电子邮件的实现思路
1.引入mail starter 2.编写相应的配置文件 3.编写邮件发送类例:SpringBoot发送电子邮件
//引入maven jar包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
//编写配置文件
//application.properties
spring.mail.host=smtp.qq.com
spring.mail.username=xxxxxxxxx@qq.com
spring.mail.password=xxxxxxxxx
spring.mail.default-encoding=utf-8
//发送电子邮件示例代码
@Service
public class MailService {
@Autowired
JavaMailSender javaMailSender;
public void sendTest(){
//建立邮件消息
SimpleMailMessage mainMessage = new SimpleMailMessage();
//发送者
mainMessage.setFrom("和spring.mail.username一样的");
//接收者
mainMessage.setTo("目标邮箱");
//发送的标题
mainMessage.setSubject("这是您需要的文件");
//发送的内容
mainMessage.setText("请看附件");
javaMailSender.send(mainMessage);
}
public void sendFileTest(ResourcesInfoVo resourcesInfo) throws MessagingException, IOException {
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage,true);
helper.setSubject("这是您需要的文件");
//发送者
helper.setFrom("和spring.mail.username一样的");
//接收者
helper.setTo("目标邮箱");
helper.setSentDate(new Date());
helper.setText("需要的文件在附件中,欢迎下次继续使用本系统。");
InputStream inputStream = new ByteArrayInputStream(resourcesInfo.getContent());
helper.addAttachment(resourcesInfo.getFileName(), new ByteArrayResource(IOUtils.toByteArray(inputStream)));
javaMailSender.send(mimeMessage);
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


