郵件綁定功能
【需求】
- 1、 用戶注冊時,輸入郵箱
- 2、 通過Javamail技術,向用戶郵箱發送一封祝賀郵件
1、javamail發送郵件
1.1、簡介
什么是javamail?
1.2、工具類
首先從哪個郵箱發出郵件,所以得發送郵件賬號支持 程序發送郵件
第一步:配置網易 開啟客戶端授權碼
(1)授權碼申請:
選中POP3/SMTP服務和IMAP/SMTP服務,點擊開啟,如果已開啟,會顯示關閉
授權碼就是JAVA代碼登錄郵箱的密碼:MQKFLKEKMUHOKVPS
第二步:在mail-demo01項目中,配置pom.xml 添加javamail的坐標。
<!-- 導入javamail的坐標 --> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency>
第三步:根據需要,編輯發送郵件正文
步驟:
- 1 設置郵件發送的屬性
- 2 設置主機地址
- 3 設置是否打開驗證
- 4 創建鏈接
- 5 創建郵件
- 6 設置發送者
- 7 設置接受者
- 8 設置標題
- 9 設置正文
- 10 坐火箭
import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMessage.RecipientType; import java.util.Properties; public class MailUtil { public static String smtp_host = "smtp.163.com"; // 網易 public static String username = "[email protected]"; // 郵箱 public static String password = "q7w8e9a4s5d6"; // 授權碼(登錄郵箱-->設置-->郵箱安全設置-->客戶端授權密碼),這里不是郵箱的密碼,切記! public static String from = "[email protected]"; // 來源郵箱,使用當前賬號 public static void sendMail(String to, String subject, String text) throws Exception { // 1 準備發送郵件需要的參數 Properties props = new Properties(); // 設置主機地址 smtp.qq.com smtp.126.com smtp.163.com props.put("mail.smtp.host", smtp_host); // 是否打開驗證:只能設置true,必須打開 props.put("mail.smtp.auth", true); // 2 連接郵件服務器 Session session = Session.getDefaultInstance(props); // 3 創建郵件信息 MimeMessage message = new MimeMessage(session); // 4 設置發送者 InternetAddress fromAddress = new InternetAddress(from); message.setFrom(fromAddress); // 5 設置接收者 InternetAddress toAddress = new InternetAddress(to); // to:直接接收者 cc:抄送 bcc暗送 message.setRecipient(RecipientType.TO, toAddress); // 6 設置主題 message.setSubject(subject); // 7 設置正文 message.setText(text); // 設置HTML方式發送 //message.setContent(text, "text/html;charset=utf-8"); // 8 發送:坐火箭 Transport transport = session.getTransport("smtp");// 參數不能少,表示的是發送協議 // 登錄郵箱,此處的密碼是授權碼 transport.connect(username, password); transport.sendMessage(message, message.getAllRecipients()); transport.close(); System.out.println("ok"); } public static void main(String[] args) { try { MailUtil.sendMail("[email protected]", "激活測試", "test"); } catch (Exception e) { e.printStackTrace(); } } }
1.3、工具類測試
使用main方法進行測試。
public static void main(String[] args) { try { MailUtil.sendMail("[email protected]", "激活測試", "test"); } catch (Exception e) { e.printStackTrace(); } }
2、客戶注冊時. 發送祝賀郵件
到此這篇關于基于JavaMail的Java郵件發送的文章就介紹到這了,更多相關Java Mail內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://blog.csdn.net/weixin_45752540/article/details/120684315