當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
使用Springboot收发邮件,如此简单!
生活随笔
收集整理的這篇文章主要介紹了
使用Springboot收发邮件,如此简单!
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
準(zhǔn)備工作
目前大部分的郵件服務(wù)都不允許直接使用用戶名/密碼的方式在代碼種發(fā)送郵件,都是先要申請授權(quán)碼,這里以qq郵箱為例,向大家演示授權(quán)碼的申請流程,首先我們需要登陸到QQ郵箱中進(jìn)行設(shè)置
在賬戶選項(xiàng)中開啟POP3/SMTP服務(wù)
項(xiàng)目創(chuàng)建
接下來我們只需要創(chuàng)建springboot項(xiàng)目,由于springboot對郵件發(fā)送做了自動配置類,我們只需要加入相關(guān)的依賴就可以進(jìn)行郵件的發(fā)送了。
完成創(chuàng)建后,項(xiàng)目依賴如下
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId> </dependency> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>- 配置郵箱基本信息
做好這些后,springboot就會自動幫我們配置好郵件發(fā)送類,相關(guān)的配置在org.springframework.boot.autoconfigure.mail.MailSenderAutoConfiguration類中。
發(fā)送簡單郵件
package com.xzy.mail.controller;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.thymeleaf.TemplateEngine; import org.thymeleaf.context.Context; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import java.util.Date;/*** @author yangkun* @date 2020/5/20*/ @Controller public class EmpMailSender {@AutowiredTemplateEngine templateEngine;@AutowiredJavaMailSender javaMailSender;@RequestMapping("/send/simpleMail")public void sendSimpleMail() {//構(gòu)建郵件對象SimpleMailMessage message = new SimpleMailMessage();//郵件主題message.setSubject("這是一封測試郵件");//郵件發(fā)送者message.setFrom("1056945048@qq.com");//郵件接收者(可以有多個(gè))message.setTo("1040558262@qq.com");//郵件抄送人message.setCc("37xxxxx37@qq.com");//郵件隱秘抄送人(可以有多個(gè))message.setBcc("14xxxxx098@qq.com");//郵件發(fā)送日期message.setSentDate(new Date());//郵件正文message.setText("這是測試郵件的正文");//發(fā)送郵件javaMailSender.send(message);}@RequestMapping("/send/thymeleafMail")public void sendThymeleafMail() throws MessagingException {MimeMessage mimeMessage = javaMailSender.createMimeMessage();MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage);mimeMessageHelper.setSubject("入職歡迎");mimeMessageHelper.setSentDate(new Date());mimeMessageHelper.setFrom("1056945048@qq.com");mimeMessageHelper.setTo("1040558262@qq.com");//郵件抄送人mimeMessageHelper.setCc("3da1s44654437@qq.com");//郵件隱秘抄送人(可以有多個(gè))mimeMessageHelper.setBcc("14445545098@qq.com");Context context = new Context();context.setVariable("name", "javaboy");context.setVariable("posName", "java后端開發(fā)");context.setVariable("joblevelName","java初級工師");context.setVariable("departmentName","軟件開發(fā)部" );String text = templateEngine.process("mail.html", context);mimeMessageHelper.setText(text,true);javaMailSender.send(mimeMessage);} }瀏覽器中輸入地址 http://localhost:8092/send/simpleMail 測試普通郵件發(fā)送
瀏覽器中輸入地址 http://localhost:8092/send/thymeleafMail 測試使用thymeleaf模板發(fā)送
總結(jié)
以上是生活随笔為你收集整理的使用Springboot收发邮件,如此简单!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php在html中生成option,使用
- 下一篇: [Spring]01_环境配置