springboot實現發送QQ郵箱
springboot發送電子郵箱,供大傢參考,具體內容如下
1.開啟qq郵箱開啟IMAP/SMTP服務*
首先進入qq郵箱
點擊設置
點擊賬戶,然後往下拉
開啟IMAP/SMTP服務
開啟成功得到授權密碼,這個要記住,一會用
2.引入pom依賴
<!--發送郵箱--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> <version>2.2.5.RELEASE</version> </dependency>
3.配置application.properties
# QQ郵箱配置 spring.mail.host=smtp.qq.com #發件人QQ郵箱地址 spring.mail.username=發件人的qq郵箱 #QQ郵箱授權碼 spring.mail.password=得到的授權密碼 #以下三項不用改動 spring.mail.properties.mail.smtp.auth=true spring.mail.properties.mail.smtp.starttls.enable=true spring.mail.properties.mail.smtp.starttls.required=true
4.創建發送電子郵箱controller
我這裡收件人地址寫死瞭,當然可以作為參數,訪問這個方法的時候把參數加上就行瞭,效果都是一樣的
package com.wyh.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.mail.Address; import javax.mail.MessagingException; import java.util.ArrayList; @RestController public class EmailController { @Resource private JavaMailSender javaMailSender; //這一步是獲取application.properties中設置的發件人郵箱地址 @Value("${spring.mail.username}") private String username; /** /* @Author 魏一鶴 * @Description 發送郵箱 * @Date 0:09 2021/5/19 * @Param [] * @return void **/ @RequestMapping("/sendEmail") public String sendMail() { //String address //發郵件 SimpleMailMessage message = new SimpleMailMessage(); //發件人郵件地址(上面獲取到的,也可以直接填寫,string類型) message.setFrom(username); //要發送的qq郵箱(收件人地址) message.setTo("[email protected]");//address //郵件主題 message.setSubject("java調用QQ郵箱發送"); //郵件正文 message.setText("我是用java發送的QQ郵箱");//!!! javaMailSender.send(message); return "發送成功!"; } }
5.查看效果
在我的qq郵箱就能看到我們發送的內容瞭
然後換一種寫法,把收件人的地址作為參數
package com.wyh.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.mail.Address; import javax.mail.MessagingException; import java.util.ArrayList; @RestController public class EmailController { @Resource private JavaMailSender javaMailSender; //這一步是獲取application.properties中設置的發件人郵箱地址 @Value("${spring.mail.username}") private String username; /** /* @Author 魏一鶴 * @Description 發送郵箱 * @Date 0:09 2021/5/19 * @Param [] * @return void **/ @RequestMapping("/sendEmail") public String sendMail(String address) { //String address //發郵件 SimpleMailMessage message = new SimpleMailMessage(); //發件人郵件地址(上面獲取到的,也可以直接填寫,string類型) message.setFrom(username); //要發送的qq郵箱(收件人地址) message.setTo(address);//address //郵件主題 message.setSubject("java調用QQ郵箱發送"); //郵件正文 message.setText("我是用java發送的QQ郵箱");//!!! javaMailSender.send(message); return "發送成功!"; } }
效果都是一樣的。
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。
推薦閱讀:
- 基於Javamail實現發送郵件(QQ/網易郵件服務器)
- springboot整合mail實現郵箱的發送功能
- SpringBoot實現發送電子郵件
- springboot 使用QQ郵箱發送郵件的操作方法
- Java實現簡單郵件發送功能